我正在使用sourcetree来存储bitbucket中的代码。
我想了解其他团队如何使用sourcetree和repo分支。
是每个开发人员完成一个分支,还是每个分支有多个开发人员,如果有多个人从他们的本地存储库推送到远程存储库,是否会发生冲突?
我们是一个小团队,所以我们创建了各个分支,每个人都进入自己的分支,最后合并为master。
我认为上述过程是错误的,因为当团队规模扩大时,不可能创建单个分支。
答案 0 :(得分:4)
分支通常是围绕要素而不是个人来组织的:如果一个人要离开该怎么办:您应该如何处理他或她的分支?
与代表实现目标的功能分支相反。
几个人可以协作到一个公共分支,在更新的获取的功能分支之上重新部署他们的本地提交,然后推送他们的提交:任何冲突都首先在本地解决(在重新部署期间)。
现在X也在分支A上工作,现在他得到了Y完成的对A的拉取请求。
X没有收到请求请求。
X所做的只是一个简单的git pull
。如果git是properly configured(意味着pull.rebase
和rebase.autostash
是全局设置的),则git pull
会触发对分支A
上本地提交的所有本地提交的重新设置获取了更新的origin/A
。
那么,假设没有冲突,X现在应该怎么做?
一个git push
,将自己的提交推送到分支A
中的远程仓库中。
在
X
发挥作用之后,Y
是否收到任何请求以进行重新定位?
不,Y会在同一个分支中投入自己的时间。
总体思路是:在一个公共分支上协同工作时,请先拉(并在本地解决任何冲突),然后在准备好时再推。