【问题标题】:Bitbucket - Commiting to a new Branch caused issue, not sure how to fixBitbucket - 提交新分支导致问题,不知道如何解决
【发布时间】:2015-10-04 12:06:01
【问题描述】:

这是导致此问题的操作顺序。

  1. 从 Master 创建的分支,分支名称 v1
  2. 对此新分支所做的更改并已推送
  3. 我拉了这个分支(推送后)并进行了一些更改
  4. 另一位用户做了一些更改并推送(在我之前)
  5. 决定从该分支创建一个分支,v1_adminui
  6. 发送git fetch获取新分支并发布git checkout v1_adminui
  7. git checkout v1_adminui 抱怨我需要先提交,因为 v1_adminui 编辑了一些我正在处理的文件
  8. 我发出了git add --allgit commit -a -m "Changes to Admin UI" 然后发出了git checkout v1_adminui
  9. 现在我使用的是 v1_adminui,但我的管理 ui 没有提交更改

如何将我的管理 ui 更改为 v1_adminui?看起来commit 发生在 v1 上,所以现在我被卡住了......请提供任何帮助。

请注意,我无法推送该提交,在合并之前需要先对其进行审核。

【问题讨论】:

    标签: git bitbucket git-branch git-commit


    【解决方案1】:

    这应该是一个相当简单的修复。首先,查看git cherry-pickhere 的文档。然后,当您了解它在做什么时,请采取以下措施:

    首先,删除您的本地v1_adminui 分支,因为此时它与您的v1 分支完全相同。

    git checkout v1
    git branch -D v1_adminui
    

    接下来,在添加所有 adminui 内容之前检查提交

    git checkout HEAD~1
    

    现在,从该提交创建一个“新”v1_adminui 分支

    git checkout -b v1_adminui
    

    接下来,从 v1 的本地副本中获取您想要的提交(假设提交位于您的 v1 分支之上。

    git cherry-pick --no-commit v1
    

    现在,您的索引看起来好像您已在 v1_adminui 分支上进行了所有 adminui 更改,但尚未提交。提交这些更改:

    git add -A
    git commit -m "<some-message-here>"
    

    现在,您的 v1_adminui 分支将包含您想要的所有更改。

    最后,如果您希望您的 v1 分支没有这些更改,请返回它

    git checkout v1
    

    并重置它们(假设您只进行了一次不再需要的提交。

    git reset --hard HEAD~1
    

    确保你小心reset --hard(查看文档here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-12-20
      • 2012-07-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-13
      • 1970-01-01
      相关资源
      最近更新 更多