git - 应用具有冲突的 Git 存储的最佳实践?

标签 git git-stash

我以前在应用存储时从未遇到过问题,但我认为即将到来的 session 可能会有所不同。我想知道是否最好从源中提取最新版本,然后应用存储并处理任何冲突,或者先应用存储,然后从源中提取最新版本?有任何一种最佳实践吗?

最佳答案

对此有多种解决方案。对我来说最有效的方法是从你的存储中创建一个新分支。然后,您可以像任何其他以某种方式出现分歧的分支一样使用该存储。

  1. 首先从您的存储中创建一个新分支:

    git stash branch <branch-name> <stash-name>
    

    然后,Git 将 checkout 最初创建存储的提交,然后应用存储(由于存储应用于其原始提交,因此您可能不会 避免任何冲突)。

  2. 根据新分支中的更改创建新提交。

    git add .
    git commit -m 'This commit contains the changes from the stash'
    
  3. 像处理任何其他 merge 提交一样解决冲突。可能的选择是 merge 新分支或在当前分支之上重新定基(并解决冲突)。

    1. git checkout master && git merge <branch-name>
    2. git rebase master

关于git - 应用具有冲突的 Git 存储的最佳实践?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30084556/

相关文章:

java - 可以响应 git 命令的本地嵌入式 HTTP 服务器?

git - 如果我们是有效用户,我们可以克隆存储库吗?

Git:错误:RPC 失败;结果=22,HTTP 代码=411

git - IntelliJ 的 Shelve 和 Git stash 有什么区别?

git stash drop : How can I delete older stashed states without dropping the latest X?

git - 将 git 与 CVS 结合使用的最佳实践

git - 使用 git stash save 或 git commit 进行本地更改?

git - git stash 的预期用例是什么?

git - stash 更改,同时将更改保留在 Git 的工作目录中

git - BitBucket 和 GitHub 如何使用特殊的 SSH key 进行 push/pull?