我是Git的新手和分支。在我们的团队中,我们有一堆网站需要简单维护(添加新页面,修复一些链接等)。提交通常包含所有请求的功能。我不确定我们是否应该创建一个分支,或者我们是否可以承诺掌握?毕竟,这些提交已经命名,并清楚地说明了我们所做的工作。我觉得分支实际上为这些简单的任务创造了更多的复杂性。或者我错了?
答案 0 :(得分:1)
作为一个粗略的准则:
存在更新分支状态的存在,并且分支作为代码库的替代视图存在。
如果您的更改可以被视为主分支的“向前移动”,那么您应该只使用提交。如果你要做一些主分支的“替代现实”,你应该做一个不同的分支。
在这种情况下,如果我了解你的情况,我猜你真的真的在更新代码库的状态,所以我只是提交你的更改。
在这方面,Git类似于任何SCM。 Git与分支的不同之处在于分支很容易创建并且(有些)易于合并。这意味着常见的工作流程是将master分支到正在进行的新功能的工作中,然后进行编辑。当您满意时,您可以将您的分支合并为主分支。这只是对直接提交的改进 - 你正在创建一个不稳定的主人的“替代现实”,改进它,然后将它合并回真正的主人 - 但净效果是相同的:你在备用的提交现实最终登陆大师,好像你总是让他们在那里。所有这些变形的最终目标是您的提交在变化时间内呈现线性前进。
答案 1 :(得分:0)
分支确实会增加复杂性,但同时它们会为您提供更多功能。一旦你开始分支,你可以很容易地将它们洗牌,从一个而不是另一个进行更改,等等。 对于简单的场景,只需要在主分支上工作就足够了(它变得非常类似于svn使用)。 你必须找到最适合你需要的git。 Here is a good resource.
答案 2 :(得分:0)
我可以建议看看Git流吗? http://nvie.com/posts/a-successful-git-branching-model/
https://github.com/nvie/gitflow
有些人说你应该尽可能避免分支,但我认为git flow可以为你让人们同时处理不同功能的环境提供一个很好的解决方案。
答案 3 :(得分:0)
Git的一个美妙之处在于它适应了许多不同的工作方式。
我们在这里告诉你的任何事情都只是个人喜好。我个人的偏好是始终为任何类型的更改创建本地分支。那是因为:
no-ff
,如果他们有相关的合并提交,则很容易退出更改或一系列更改。git stash
来保存更改,但我发现单独的分支不那么令人困惑。 (通常我会用“正在进行中工作”的提交消息检查我的工作。然后当我返回分支时,我会git reset HEAD~1
撤消最后一次提交[但保留更改]并继续工作。 )这些是考虑始终创建分支的一些原因。尝试一下,看看它是否适合你,然后把它作为一种新技术保存,如果你不关心它就丢弃它。
答案 4 :(得分:-1)