首页 > 其他分享 >【Tools】git fork 自我理解

【Tools】git fork 自我理解

时间:2024-01-05 14:33:06浏览次数:27  
标签:fork git repository visibility 开源 upstream forks Tools

github or gitlab上都有一个fork的功能,什么是fork的功能,设计改功能的逻辑是什么?

根据下面github官方的介绍,个人理解

fork更多用于开源项目中,由于开源项目涉及的人分散在世界,在没有取得开源软件发起人或成员信任之前,一般不会允许新加入的成员直接新建分支,这样新的开发者就很难参与到开源代码贡献。

有了fork这个功能选项,新的开发者/不具备开源仓库权限开发者,可以fork这个开源项目到自己的repo,这样任何的操作都将是在个人仓库进行的,不会影响到开源软件仓库的演进。当fork的项目发生变更的时候,还可以选择将commit 提交到PR到upstream的仓库。

Working with forks

Forks are often used in open source development on GitHub. 

About forks

A fork is a new repository that shares code and visibility settings with the original “upstream” repository.

Fork a repository

A fork is a new repository that shares code and visibility settings with the original “upstream” repository.

About permissions and visibility of forks

The permissions and visibility of forks depend on whether the upstream repository is public or private, and whether it is owned by an organization.

Configuring a remote repository for a fork

You must configure a remote that points to the upstream repository in Git to sync changes you make in a fork with the original repository. This also allows you to sync changes made in the original repository with the fork.

Syncing a fork

Sync a fork of a repository to keep it up-to-date with the upstream repository.

Allowing changes to a pull request branch created from a fork

For greater collaboration, you can allow commits on branches you've created from forks owned by your personal account.

What happens to forks when a repository is deleted or changes visibility?

Deleting your repository or changing its visibility affects that repository's forks.

标签:fork,git,repository,visibility,开源,upstream,forks,Tools
From: https://www.cnblogs.com/eesky/p/17947208

相关文章

  • Python武器库开发-武器库篇之上传本地仓库到Git(三十八)
    武器库篇之上传本地仓库到Git(三十八)当我们在Git中创建远程仓库和进行了SSHkey免密登陆之后,我们点击Yourrespositories可以查看我们所创建的远程仓库,如图所示:如果我们需要将本地的仓库上传到Git,首先我们需要建立一个本地的仓库,我们创建一个和远程仓库同名的本地仓库,然后进入这......
  • Python武器库开发-武器库篇之Git创建远程仓库和建立SSH key 免密登陆(三十七)
    武器库篇之Git创建远程仓库和建立SSHkey免密登陆(三十七)Git是一种版本控制系统,用于跟踪文件的更改和协调多人开发项目。它可以记录文件的历史更改,协助多人协作开发,并提供分支管理功能。Git是一个分布式系统,意味着每个人在自己的本地计算机上都有一份完整的代码仓库,并且可以独立......
  • 一行代码也不写,拿Github Copliot + DallE3做一个小游戏是什么体验?
    我全程没写一句代码...   乡村爱情15看完了,晚上也没什么事,就寻思折腾点事做,儿子问我小时候最爱玩什么游戏,我毫不犹豫的说1945,正好这个事情给了我一个brainstorming,那我自己写一个简单的1945可不可以?   说干就干,但是我也没写过游戏,于是我开启了GitHubCopliot...  ......
  • github短视频去除水印项目Douyin_TikTok_Download_API介绍
    当下正值短视频盛行的时代。在我们浏览短视频的同时,经常能发现一些精美的图片、引人入胜的文案以及吸引眼球的视频,想要将它们保存到本地。然而,保存下来的图片或视频通常伴随着不太愉悦的水印,这显著降低了使用体验。因此,我时常思考是否存在途径能够下载一些无水印的图片。虽然有许多......
  • Git的GPG签名 —— Tag签名 Verified验证,防伪造的gitee/github commit验证
    相关资料:如何使用git通过ssh协议拉取gitee上的项目代码——如何正确的免密使用git不论是gitee还是GitHub都有两种公钥设置,一种是ssh公钥,另一种则是GPG公钥。ssh公钥是为了在进行gitpull和gitpush操作时进行免密验证的;而GPG公钥是在gittag和gitcommit时进行验证的。不过需......
  • 无涯教程-Java 正则 - \p{XDigit}匹配函数
    字符类\p{XDigit}匹配任何十六进制字符。p{XDigit}-示例下面的示例显示Posix字符类匹配的用法。packagecom.learnfk;importjava.util.regex.Matcher;importjava.util.regex.Pattern;publicclassPosixCharacterClassDemo{privatestaticfinalStringREGEX......
  • ​​git clone​ 与 git 安装
    gitclone是一个用于从远程仓库克隆代码到本地的命令。使用方法如下:gitclone<仓库地址>其中,<仓库地址>是你要克隆的远程仓库的URL。例如:gitclonehttps://github.com/username/repository.gitGit可以通过官方网站下载并安装。以下是在不同操作系统上安装Git的步骤:Windows......
  • 无涯教程-Java 正则 - \p{Digit}匹配函数
    字符类\p{Digit}匹配任何数字。p{Digit}-示例下面的示例显示Posix字符类匹配的用法。packagecom.learnfk;importjava.util.regex.Matcher;importjava.util.regex.Pattern;publicclassPosixCharacterClassDemo{privatestaticfinalStringREGEX="\\p{Di......
  • Unlocking the Secrets of AI and Machine Learning: Techniques, Tools, and Best Pr
    1.背景介绍人工智能(ArtificialIntelligence,AI)和机器学习(MachineLearning,ML)是当今最热门的技术领域之一。它们为我们提供了解决复杂问题和自动化任务的强大工具。然而,这些领域的知识和技能对于许多人来说仍然是一个陌生领域。本文旨在揭示AI和ML的秘密,提供有用的技术、工......
  • Installed Build Tools revision 34.0.0 is corrupted
    解决方案:根据构建报错信息"31.0.0版本的构建工具缺少了DX文件"发现,31.0.0版本的构建工具缺少了"dx.bat"和"dx.jar"这两文件,正确的做法就是复制对应路径的"d8.bat"和"d8.jar"这两文件创建副本,并分别改名为"dx.bat"和"dx.jar"【该方法同样适用于34.0.0版本问题】,"d8.bat"和&qu......