Git 如何恢复collaborator';s在他的提交中的更改,并将我在提交中的更改保留在同一分支中?

Git 如何恢复collaborator';s在他的提交中的更改,并将我在提交中的更改保留在同一分支中?,git,Git,汤姆和我正在制作一个专题分支 Tom首先做了一些更改,提交并推送到github 然后我从github退出,在其他地方做了一些更改,提交并推送到github 现在我想 恢复他所做的所有更改,以及 不用找了 我可以使用什么命令 我如何识别他推送到github的所有提交 如何恢复在his的已标识提交中所做的更改,同时将更改保留在提交中 谢谢。这是两个命令的混合体-git log和git revert 我们将使用git log来确定他做了哪些提交。不过,由您决定“停止”哪项承诺 首先,git

汤姆和我正在制作一个专题分支

  • Tom首先做了一些更改,提交并推送到github

  • 然后我从github退出,在其他地方做了一些更改,提交并推送到github

现在我想

  • 恢复他所做的所有更改,以及
  • 不用找了
我可以使用什么命令

  • 我如何识别他推送到github的所有提交
  • 如何恢复在his的已标识提交中所做的更改,同时将更改保留在提交中

谢谢。

这是两个命令的混合体-
git log
git revert

我们将使用
git log
来确定他做了哪些提交。不过,由您决定“停止”哪项承诺

首先,
git log
获取他们在特定分支上完成的所有提交的列表:

git log --graph --author="Tom" --oneline --decorate --pretty <branch>

这将创建一个revert commit,它将撤消Tom在这些范围内的所有工作。如果Tom的任何工作涉及到你的工作,你会在这里知道,你需要找出诊断/解决问题的最佳方法。要将其取回,必须还原。

这是两个命令的混合体—
git log
git revert

我们将使用
git log
来确定他做了哪些提交。不过,由您决定“停止”哪项承诺

首先,
git log
获取他们在特定分支上完成的所有提交的列表:

git log --graph --author="Tom" --oneline --decorate --pretty <branch>

这将创建一个revert commit,它将撤消Tom在这些范围内的所有工作。如果Tom的任何工作涉及到你的工作,你会在这里知道,你需要找出诊断/解决问题的最佳方法。要恢复,您必须还原还原。

您的任何提交是否建立在Tom的任何提交之上?我的更改与他的更改位于不同的位置。您想重写历史记录(好像Tom从未做过任何事情)还是只想添加可撤消Tom所做更改的提交?我们正在处理一个分支。我想还原他在分支上所做的操作,而不修改历史。您可以使用
git log--author tom
查看“tom”所做的提交(添加
--stat
-p
以获取更多信息)。使用
git revert COMMIT
还原特定的提交(或
git revert COMMIT1..COMMIT2
进行一系列提交)。您的任何提交是否建立在Tom的任何提交之上?我的更改与他的更改位于不同的位置。是否要重写历史记录(好像Tom从未做过任何事情)或者您只是想添加提交以撤消Tom所做的更改?我们正在处理一个分支。我想还原他在分支上所做的操作,而不修改历史。您可以使用
git log--author tom
查看“tom”所做的提交(添加
--stat
-p
以获取更多信息)。使用
git revert COMMIT
还原特定的提交(或
git revert COMMIT1..COMMIT2
还原一系列提交)。谢谢。见我上面的评论。谢谢。见我上面的评论。