jjzjj

Git:如何将 "undo" merge

情况:从A的Master开始,我在B分支并进行了一些更改,然后将该分支merge回(C)。在进行了更多更改后,我在D但发现我需要部署代码,而无需在分支中发生更改。如果我不手动merge它就好了。A_______C___D\/\_B_/首先,我想知道我应该从这里做什么来部署代码,就好像merge从未发生过一样。注意:在分支中编辑过的相同文件都没有在主控中编辑过。其次...我没有时间想出最好的方法来处理这个问题,所以我删除了分支添加的文件,并手动还原了分支中所做的一些编辑,然后提交了部署结果(F)A_______C___D___F\/\_B_/我希望能够继续开发分支并将master的任何更

git - 我怎样才能撤消我最后的 git 添加/提交?

我编辑了一个文件并做了:gitaddfile.pygitcommit-m'fixedbug'然后我编辑了另一个文件并修复了一个小错误。我不想要两个提交,一个接一个,显示“错误修复”。我想要一个带有“错误修复”的提交。如何撤消上次添加/提交并更改第一个提交消息?我正在查看gitreset、gitrevert、gitundo命令,但我不想搞砸我的repo一个猜测编辑:了解如何操作:http://www.gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html 最佳答案

git - 我怎样才能撤消我最后的 git 添加/提交?

我编辑了一个文件并做了:gitaddfile.pygitcommit-m'fixedbug'然后我编辑了另一个文件并修复了一个小错误。我不想要两个提交,一个接一个,显示“错误修复”。我想要一个带有“错误修复”的提交。如何撤消上次添加/提交并更改第一个提交消息?我正在查看gitreset、gitrevert、gitundo命令,但我不想搞砸我的repo一个猜测编辑:了解如何操作:http://www.gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html 最佳答案

git - 如何撤消 git 子模块更新

我不小心checkin了错误的子模块更新:(作为更大提交的一部分)-子项目提交025ffc+子项目提交f59250已经推送到远程..如何撤消此更新? 最佳答案 在子模块目录下运行gitcheckout025ffc然后gitaddSubmoduleName;gitcommit-m'Somemessage'在主目录中。(请记住,通过其哈希检查提交会使您处于“分离的HEAD状态”,这意味着您不在任何分支上。因此,如果已经有一个分支指向025ffc子模块存储库,你应该检查那个分支;否则,你可能想在那里创建一个分支并检查它。)

git - 如何撤消 git 子模块更新

我不小心checkin了错误的子模块更新:(作为更大提交的一部分)-子项目提交025ffc+子项目提交f59250已经推送到远程..如何撤消此更新? 最佳答案 在子模块目录下运行gitcheckout025ffc然后gitaddSubmoduleName;gitcommit-m'Somemessage'在主目录中。(请记住,通过其哈希检查提交会使您处于“分离的HEAD状态”,这意味着您不在任何分支上。因此,如果已经有一个分支指向025ffc子模块存储库,你应该检查那个分支;否则,你可能想在那里创建一个分支并检查它。)

git - 'git reset --hard HEAD~1' 和 'git reset --soft HEAD~1' 有什么区别?

我试图在git中撤消我的提交。使用gitreset--hardHEAD~1有危险吗?gitreset的不同选项有什么区别? 最佳答案 gitreset知道五种“模式”:软、混合、硬、merge和保留。我将从前三个开始,因为这些是您通常会遇到的模式。之后你会发现一个不错的小奖励,敬请期待。假设您有一个具有类似于此历史记录的存储库:7e05a95(HEAD->main)Updateae62add5Updatebca9ae0aUpdatea9b6060dAddceebe372Addb947586aAdda最新的提交(7e05a95)包含这

git - 'git reset --hard HEAD~1' 和 'git reset --soft HEAD~1' 有什么区别?

我试图在git中撤消我的提交。使用gitreset--hardHEAD~1有危险吗?gitreset的不同选项有什么区别? 最佳答案 gitreset知道五种“模式”:软、混合、硬、merge和保留。我将从前三个开始,因为这些是您通常会遇到的模式。之后你会发现一个不错的小奖励,敬请期待。假设您有一个具有类似于此历史记录的存储库:7e05a95(HEAD->main)Updateae62add5Updatebca9ae0aUpdatea9b6060dAddceebe372Addb947586aAdda最新的提交(7e05a95)包含这

git - 在 GIT 中撤消删除

我做了一些非常愚蠢的事情。我使用gitcommit(文件编辑+新文件)(C)进行了提交。然后我修改了最后一次提交。然后我使用gitrm-r递归地(!)删除了所有文件然后我做了另一个gitcommit(C)。A-B-C↑master有什么方法可以取消删除文件但保留我在第一次提交时所做的更改?(C)我宁愿不回到(B)。我尝试了gitreset--softhead^,然后gitstatus列出了我删除的文件,然后我做了gitcheckout,但仍然没有成功。我什至不知道这是否可能。 最佳答案 帮自己一个忙,不要做gitcheckout就像

git - 在 GIT 中撤消删除

我做了一些非常愚蠢的事情。我使用gitcommit(文件编辑+新文件)(C)进行了提交。然后我修改了最后一次提交。然后我使用gitrm-r递归地(!)删除了所有文件然后我做了另一个gitcommit(C)。A-B-C↑master有什么方法可以取消删除文件但保留我在第一次提交时所做的更改?(C)我宁愿不回到(B)。我尝试了gitreset--softhead^,然后gitstatus列出了我删除的文件,然后我做了gitcheckout,但仍然没有成功。我什至不知道这是否可能。 最佳答案 帮自己一个忙,不要做gitcheckout就像

git - 撤消 git update-index --skip-worktree

不久前我这样做是为了忽略对git跟踪的文件的更改:gitupdate-index--skip-worktree现在我实际上想将该文件的更改提交给源代码。如何撤消skip-worktree的影响? 最佳答案 啊哈!我只是想:gitupdate-index--no-skip-worktree 关于git-撤消gitupdate-index--skip-worktree,我们在StackOverflow上找到一个类似的问题: https://stackoverflo