Git:如何在没有所有历史记录的情况下挑选一个提交
Git: How to cherry-pick a commit without all previous history
我想将我的 current
存储库中特定提交的一些特定更改添加到我的 upstream
存储库中。
运行 像这样:
git push upstream <commit SHA>:<remotebranchname>
添加提交加上所有以前的更改
运行 类似于
git checkout -b new-branch
git pull <remote> <upstream branch> branch is
git cherry-pick <commit hash>
git push <remote> new-branch
同时写入所有以前的更改。
我只是想将那个提交的具体更改写入 upstream
存储库,因此它不包括我的 current
存储库中以前提交所做的更改,这些更改不在upstream
.
Whosebug 上有很多关于 cherry-pick
和 rebase
的信息,但 none 回答了这个非常具体的问题。
您可以在上游存储库中从远程分支创建本地分支,然后挑选。
假设 "upstream" 是您的上游遥控器的名称,您可以执行以下操作:
git fetch upstream
git checkout -b new-branch upstream/<upstream branch>
git cherry-pick <commit hash>
git push upstream new-branch
您可以使用
检查上游仓库的名称
git remote -v
我想将我的 current
存储库中特定提交的一些特定更改添加到我的 upstream
存储库中。
运行 像这样:
git push upstream <commit SHA>:<remotebranchname>
添加提交加上所有以前的更改
运行 类似于
git checkout -b new-branch
git pull <remote> <upstream branch> branch is
git cherry-pick <commit hash>
git push <remote> new-branch
同时写入所有以前的更改。
我只是想将那个提交的具体更改写入 upstream
存储库,因此它不包括我的 current
存储库中以前提交所做的更改,这些更改不在upstream
.
Whosebug 上有很多关于 cherry-pick
和 rebase
的信息,但 none 回答了这个非常具体的问题。
您可以在上游存储库中从远程分支创建本地分支,然后挑选。
假设 "upstream" 是您的上游遥控器的名称,您可以执行以下操作:
git fetch upstream
git checkout -b new-branch upstream/<upstream branch>
git cherry-pick <commit hash>
git push upstream new-branch
您可以使用
检查上游仓库的名称git remote -v