github 协同开发
一 github协同开发流程
二 自己创建仓库,并添加管理者
一 github协同开发流程
1 fork 仓库到自己的github下
2 clone 到本地
git clone https://github.com/QuanyiLi/getDistance.git
3 修改代码并提交
- 首先输入 git status 列出当前目录所有还没有被git管理的文件和被git管理且被修改但还未提交(git commit)的文件,也就是所有改动文件,红色字体标出。
- 然后输入 git add . (有个点) 表示添加当前目录下的所有文件和子目录,
- 然后 再输入一次 git status 如果看见文件都变绿了 ,那么就代表 它们已经准备好了被提交(git commit)
- 然后提交:
git commit -m "modify"
git pull
git push
以上步骤也可以在IDE中完成,比如vs2015
4 拉取请求,等管理员同意后合并
按自己的需要去修改项目内容,然后将所做的修改提交(Add+Commit)到自己的代码仓库,接着到仓库页面,点击 New pull request 按钮。
点击去之后可以看到,左边红框是你“Fork”的原项目仓库和分支,右边红框是你当前选择的项目仓库和分支。其实这里就是将两个红框内的内容作对比,并把不相同的地方显示出来。因为此时两个仓库和分支的内容是完全一样的,所有没有什么信息显示出来(我没有做修改)。不太理解的话,可以自由去尝试四个下拉框里不同的选项,很快你就会知道是怎么回事了。
我这里任意选择了原项目的另一个分支,因为这两个分支不完全相同,所以可以看到出现了一个 “Create pull request” 的按钮,点击它。
填写你的请求信息,说明你做了些什么之类的。这个请求是发给该项目的维护者(拥有者)的,完成之后点击 “Create pull request” 按钮即可。
之后项目的维护者会受到你的请求,只要他/她通过了你的请求,你所做的修改就会被整合到原项目的仓库里了。
4 代码同步
4. 与原仓库保持同步更新
说到合作开发就会有一个问题,如何与他人的代码保持同步?在自己做开发的过程中,难免会遇到你 “Fork” 的项目已经有了新的更新,这时当然是希望自己仓库中的代码也能同步进行更新。可是,你本地仓库所连接的远程仓库的是你自己的 GitHub 仓库,而不是原作者的仓库。解决方法其实很简单,为你的本地仓库再添加一个远程仓库源。
查看当前项目所连接的远程仓库
打开终端,进入到项目的 Git 仓库所在目录,一般就是项目目录,输入:
git remote -v
可以看到目前只连接了我自己的远程仓库。
添加原作者的远程仓库连接
git remote add upstream https://github.com/GoogleChrome/lighthouse.git
(注意替换原仓库的 http 链接)
如图,现在已经成功添加原项目的远程仓库了。
还差一点就大功告成了
(1)从原仓库获取最新版本到本地
git fetch upstream master
(2)保证当前位于 master 分支上
git checkout master
(3)将最新版本整合到本地 master 分支上
git merge upstream/master
(4)将更新发送到自己的 GitHub 仓库里
git push origin master
(1)(2)(3)步可以用
git pull upstream master
这条命令替代,可以这样不太安全,因为你 fetch(获取)之后可以通过
gitlog--oneline --graph --decorate --all
来查看更新的情况,再决定是否 merge(整合)到一起。
二 自己创建仓库,并添加管理者
参考地址:
https://www.cnblogs.com/lijiayi/p/githubpages.html
https://www.jianshu.com/p/8c69d1021d98