如何跟踪我的开发git分支中的origin / master
我是git的新手,我想知道如何处理一个非常基本的场景。 我读了很多关于git的stackoverflow的帖子,但仍然无法找出答案。
我们有一个每个人都在从事的起源/主远程分支。 我有一个我想实现的功能,可能需要时间来开发。 同时,人们可能正在检查源代码/主人的代码。
考虑到以下需求,我的工作流程将如何?我应该如何设置我的git分支:
我希望能够将代码更改提交给我的分支,并将它们推送到我们服务器上的远程分支,所以我不会在计算机被炸时改变这些更改。
我想让我的分支与主分支保持同步。
我想尽量减少定期合并。 我喜欢git rebase的概念,所以我想最大限度地利用它,因此快速合并。
在某些时候,我们将不得不将我的分支FeatureA合并到origin / master中。
总结:
我如何设置一个从原点/主点拉出,但推到原点/ MY-BRANCH的分支?
我的工作流程会是什么样子?
更新:
谢谢@ will-pragnell! 您的解决方案和以下内容有什么区别?
github上的这个页面建议:
https://github.com/diaspora/diaspora/wiki/Git-Workflow
为了从开发中获得最新的更新,请执行一次性设置,通过输入以下内容来将主GitHub repo建立为远程:
$ git remote add upstream git://github.com/diaspora/diaspora.git
$ git fetch upstream
$ git checkout master
$ git rebase upstream/master
$ git checkout 100-retweet-bugfix
[确保在分支机构中必要时全部提交]
$ git rebase master
你可能不希望有一个分支从大师那里拉出来,并推到你自己的分支。 你想要的是从主人拉到你的本地主人,在本地处理重新绑定,然后推送到你自己的远程分支的功能。 这是一个相当标准的工作流程,为您提供完整的控制和最少量的合并。 我个人会这样做:
创建一个新的本地分支
git checkout -b myFeature
把它推到一个新的远程分支(如果你需要关于这个步骤的更多信息,请参阅这个stackoverflow问题)
git push origin myFeature
现在,您可以在myFeature分支上轻松工作,在需要时使用上述命令,而不必搞乱主分支。 当你需要掌握其他人对主人完成的提交时,你可以这样做:
git checkout master
git pull (this will just fast-forward if you don't make any local changes to master)
git checkout myFeature
git rebase master
当您的功能完成后,您可以将分支合并或重新绑定到主设备,以便其他人获得您的新功能。 喜欢这个:
git checkout master
git merge myFeature
git push origin master
git checkout -b FeatureA
(创建和结帐分支)
git push origin FeatureA
(将新创建的分支推送到原点)
在新分支FeatureA上工作。 你不想经常合并,然后重新分配
git rebase origin
将来每当你想融入主人时。
git checkout master
git merge FeatureA
git push origin master
链接地址: http://www.djcxy.com/p/4605.html
上一篇: How to keep track of origin/master in my dev git branch