如何在git的另一个分支中删除了对分支中不需要的文件的更改

时间:2018-07-03 09:11:06

标签: git

我创建了一个名为branch1的本地分支,对文件“ filename1”进行了更改(对方法“ method1”进行了更改),并将这些更改推送到git并创建了一个拉取请求。之后,我在本地创建了另一个分支“ branch2”,对分支1中的相同文件“ filename1”进行了更改,但其他更改与方法1不相关,并将这些更改推送至git并创建了请求请求。现在的问题是在为branch2创建的请求请求中,我对branch1中所做的filename1更改进行了更改。我不想看到在此branch2中添加的那些更改。我该怎么做。谢谢。

编辑: branch1-更改为filename1 ...推送到git branch2-更改为filename1 ...推送到git 我将branch2中的更改推到了git,我看到了branch1中对filename1的更改。我不想在branch2中进行这些更改。我该怎么办?

1 个答案:

答案 0 :(得分:1)

这听起来像您创建了“ branch2”,而没有先离开“ branch1”。
@下次:要完成您想要的工作:

  1. 您在当前的主分支中
  2. 创建branch1 git checkout -b branch1并进行所需的所有更改,将其推送git push --set-upstream origin branch1
  3. 检出您从其分支branch1 git checkout master的提交
  4. 立即创建branch2,不从branch1 git checkout -b branch2提交任何内容,进行更改,将其推送git push --set-upstream origin branch2

@当前请求请求: 假设未跟踪对pull-request的更改,则您可以删除本地branch2,如上所述重新创建branch2,从当前的remote-branch2 中选择所需的提交(或使用rebase,参见cmbuckleys评论),然后将其强行推送到remote-branch2。

如果托管您的git存储库的任何内容都跟踪对pull-request的更改,则无法从我所知道的日志中完全消除它们。您只能关闭请求请求并创建一个新请求。

所有这些都是基于这样的假设,即您对创建请求请求的主存储库没有任何影响。