分支机构如何用于软件行业的大型团队?

How are branches used in software industry for a big team size?

我在 bitbucket 中使用 sourcetree 作为代码存储库。
我想了解其他团队如何使用 sourcetree 和 repo 分支。

是每个开发分支完成还是每个分支多个开发完成,如果是这样,如果多个人从他们的本地仓库推送到远程仓库,是否会发生冲突?

我们是一个小团队所以,我们创建了独立的分支,每个人都推到自己的分支,最后合并到master。
我认为上述过程是错误的,因为当团队规模扩大时,不可能创建单独的分支。

分支通常是围绕功能而不是个人组织的:如果个人离开怎么办:您应该如何处理他或她的分支?
与功能分支相反,功能分支代表要实现的目标。

几个人可以协作到一个公共分支,将他们的本地提交重新定位在更新的获取的功能分支之上,然后推送他们的提交:首先在本地解决任何冲突(在重新设置基准期间)。

Now X is also working on branch A, now he gets the pull request on A done by Y.

X 没有收到拉取请求。
X所做的是一个简单的git pull。如果 git 是 (意味着 pull.rebaserebase.autostash 是全局设置的),那么 git pull 会触发分支 A 上任何本地提交的变基在获取的更新 origin/A.

之上

So what should X do now assuming there is no conflict?

A git push,将 his/her 自己的提交推送到分支 A.

中的远程仓库

And after X does his part, does Y gets any pull request for the rebase?
No. Y will pull in his/her own time that same branch.

总体思路是:在公共分支上协同工作时,先拉取(并在本地解决任何冲突),然后在准备就绪时推送。