使用 Git,在我的代码提交合并到 master 分支后,我是否删除我的远程分支,再次克隆 master 并检出下一个分支?

With Git, after my code commits are merged to the master branch, do I delete my remote branch, clone master again and checkout the next branch?

我知道 git pull origin master 只会拉入并将代码合并到我当前的远程分支。最好的做法是删除我的提交合并到 master 的分支,然后重新克隆更新的 master 分支并再次 git checkout -b [next branch name]? 吗?`

如果该分支是功能分支,并且该功能已完成,那么是的,删除分支(both locally and on the remote)是避免旧分支堆积的好做法。

如果分支代表了长期的开发工作(例如 'dev' 代表 'development'),那么您可以继续使用它,即使在合并后也是如此。

收件人:无需重新克隆。

如果您相对确定地知道(就像 master 自上次拉动以来已经显着)您将永远不需要再次使用该分支,请务必删除它。每当我需要选择一个特定的分支和 运行 git 分支时,我经常删除分支,它显示了大多数分支的列表,对我来说显示了上次清理该地方时的所有混乱。

您的下一步应该是 运行 git checkout master。根据上游的回购以及您是否在分叉上将决定您的下一步。顺便说一下,有很多方法可以完成你所寻求的,但我想帮助你,所以我会建议初学者 git 流程到 git 开始。

如果你在分叉上:

  1. 现在尝试git fetch upstream。它将拉入所有上游分支。
  2. 然后你可以 运行 git merge upstream master,这将使你的本地分叉恢复同步。
  3. 返回主分支 运行 git checkout master 这可能是您已经知道的命令。这意味着,切换回 master 分支。
  4. 您可以向上推送 master 分支的内容,以便您的远程分支是最新的。

如果您不在分叉上,只需将 upstream 替换为 origin

当然,您可以使用 git pull master 跳过第 1 步和第 2 步,但我想强调 fetch 为您提供的功能,让您了解其他人在远程仓库中所做的工作。这种可见性对于刚起步的人来说非常有帮助。希望对您有所帮助!

Steve Smith's blog on why you should delete branches is great: