到特定的提交(标签)进行Git拉取

10

我有一个远程仓库的克隆。我将其远程url更新为自己的服务器。然后我进行了一些提交并将它们推送到我的仓库。 现在我需要从初始仓库中拉取一些更改,从特定的分支开始。 我可以通过运行以下命令来完成:

git pull http://example.com/repo.git example_branch
这将从“example_branch”拉取每个新提交(实际上我会得到一个dev版本)。但是这个“example_branch”有标签。我需要在特定的标签停止拉取(在我的情况下获取一个稳定的版本)。 我该如何做到这一点? 更新最终我想到了:
git remote add example http://example.com/repo.git
git fetch
git merge tag_name

我认为你正在试图解决错误的问题。为什么你想要仅拉回到特定的提交呢? - Arjan
1
如果我从一个分支中拉取所有提交,那么我会得到一个开发版本。但是我需要一个稳定的发布版。 - Leksat
参见:https://dev59.com/P1wZ5IYBdhLWcg3wbv7r#64558798 - dbn
2个回答

11

git pull只是git fetch后面跟一个git merge。所以您可以轻松地执行git fetch,然后合并所需的提交/标签。


20
为什么不写出执行此操作的命令,而是只是说您可以轻松地执行此操作? - Joe C

2

Git仓库可以支持多个远程仓库。

在您的情况下,您需要添加第二个远程仓库(与您的旧服务器):

git remote add old_server http://example.com/repo.git

然后,您只需从中获取即可:
git fetch old_server

最后,将你需要的特定提交合并到你的项目中。

这里有详细说明。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接