您应该如何处理不再需要的 git 个分支?
What are you supposed to do with no longer needed git branches?
我正在和我的团队一起做一个项目,我们使用 master
作为我们的稳定分支,dev
用于已经实现但在我们合并更改之前正在测试的新功能master
。我从 dev
创建了一个名为 new-feature-1
的分支,并在这个分支上做了几次提交,确保将这些更改一路推送到我们的远程。我现在已经完成了 new-feature-1
的工作,并将其与 dev
合并,它被接受并与 master
合并。该功能已经实现,我不再需要 new-feature-1
作为分支,但它在我的本地机器上,更重要的是在远程机器上。
在这种情况下通常会做什么?我是否删除 new-feature-1
并强制将删除推送到远程?或者把它留在那里是标准做法吗?大多数 people/companies 在这种情况下做什么?
如果没有人再使用该分支,您应该使用 git branch delete branchname
将其删除。您可以使用 git push -d origin branchname
在移除服务器上将其删除。 (不需要force
)
既然已经合并了分支,那么删除分支也不用担心丢失,因为以后可以很容易地使用git branch branchname commitid
重新创建分支,commitid是从哪里得到的git log --graph --oneline --decorate --all
请记住,分支只不过是一段文本,通常称为 名称。那就是你曾经的所有分支。您需要分支的 原因 是因为既没有名称也不是具有名称的提交的父级(在某种程度上)的提交是 无法访问的并且将最终死。所以如果你
不需要在此分支上完成提交,或者
可以到达您需要的该分支上的所有提交,因为该分支已合并到另一个分支
那么这个名字没有任何意义,应该被删除,因为它只会弄乱命名空间。
[替代隐喻:]将分支想象成 书签。它在您工作时占据您的位置。完成工作后,您不再需要书签;没地方放了。
我建议不要立即删除它。您不知道客户想要什么,但出于某种原因您可能需要它。我们都知道每次决赛后仍然有最终要求更新。
您可以随时删除,但无法取回分支。虽然合并后您将拥有该分支的所有提交,但拥有该分支可能会使您的工作更轻松。
我的建议是保留分支一段时间。然后一旦你发现你没有使用它就删除它。
我正在和我的团队一起做一个项目,我们使用 master
作为我们的稳定分支,dev
用于已经实现但在我们合并更改之前正在测试的新功能master
。我从 dev
创建了一个名为 new-feature-1
的分支,并在这个分支上做了几次提交,确保将这些更改一路推送到我们的远程。我现在已经完成了 new-feature-1
的工作,并将其与 dev
合并,它被接受并与 master
合并。该功能已经实现,我不再需要 new-feature-1
作为分支,但它在我的本地机器上,更重要的是在远程机器上。
在这种情况下通常会做什么?我是否删除 new-feature-1
并强制将删除推送到远程?或者把它留在那里是标准做法吗?大多数 people/companies 在这种情况下做什么?
如果没有人再使用该分支,您应该使用 git branch delete branchname
将其删除。您可以使用 git push -d origin branchname
在移除服务器上将其删除。 (不需要force
)
既然已经合并了分支,那么删除分支也不用担心丢失,因为以后可以很容易地使用git branch branchname commitid
重新创建分支,commitid是从哪里得到的git log --graph --oneline --decorate --all
请记住,分支只不过是一段文本,通常称为 名称。那就是你曾经的所有分支。您需要分支的 原因 是因为既没有名称也不是具有名称的提交的父级(在某种程度上)的提交是 无法访问的并且将最终死。所以如果你
不需要在此分支上完成提交,或者
可以到达您需要的该分支上的所有提交,因为该分支已合并到另一个分支
那么这个名字没有任何意义,应该被删除,因为它只会弄乱命名空间。
[替代隐喻:]将分支想象成 书签。它在您工作时占据您的位置。完成工作后,您不再需要书签;没地方放了。
我建议不要立即删除它。您不知道客户想要什么,但出于某种原因您可能需要它。我们都知道每次决赛后仍然有最终要求更新。
您可以随时删除,但无法取回分支。虽然合并后您将拥有该分支的所有提交,但拥有该分支可能会使您的工作更轻松。
我的建议是保留分支一段时间。然后一旦你发现你没有使用它就删除它。