我在尝试挑选特定提交时陷入了一个奇怪的循环中。以下是我的操作和问题所在。
我有两个分支:主线(mainline)和临时(temp)。我想从主线挑选一个特定的提交到临时分支。我的操作如下:
1. `git checkout temp` 2. `git cherry-pick ` 3. 现在,我得到了“Segmentation fault: 11”错误。 4. 我重新运行第2步的命令,得到了“Unable to create ...git/index.lock': File exists”错误。
现在我执行以下步骤:
5. 运行`rm -f ./.git/index.lock` 6. 再次尝试`git cherry-pick ` 7. 现在我得到了这个错误:“error: The following untracked working tree files would be overwritten by merge: myfile.java”,但实际上这个文件并不存在于仓库中。
接下来我执行以下步骤:
8. 运行`git status`,发现文件`myfile.java`位于未跟踪文件中,并且甚至出现在编辑器中。我可以从编辑器中删除它,但无法从git仓库中删除它。我得到了`pathspec 'myfile.java' did not match any files`错误。 9. 所以我从编辑器中删除了该文件,重新运行`cherry-pick`,然后回到了第3步。
请问这里发生了什么,我应该如何完成我的挑选操作? :D
我有两个分支:主线(mainline)和临时(temp)。我想从主线挑选一个特定的提交到临时分支。我的操作如下:
1. `git checkout temp` 2. `git cherry-pick ` 3. 现在,我得到了“Segmentation fault: 11”错误。 4. 我重新运行第2步的命令,得到了“Unable to create ...git/index.lock': File exists”错误。
现在我执行以下步骤:
5. 运行`rm -f ./.git/index.lock` 6. 再次尝试`git cherry-pick ` 7. 现在我得到了这个错误:“error: The following untracked working tree files would be overwritten by merge: myfile.java”,但实际上这个文件并不存在于仓库中。
接下来我执行以下步骤:
8. 运行`git status`,发现文件`myfile.java`位于未跟踪文件中,并且甚至出现在编辑器中。我可以从编辑器中删除它,但无法从git仓库中删除它。我得到了`pathspec 'myfile.java' did not match any files`错误。 9. 所以我从编辑器中删除了该文件,重新运行`cherry-pick`,然后回到了第3步。
请问这里发生了什么,我应该如何完成我的挑选操作? :D
rm .git/index.lock
命令,而是应该使用git cherry-pick --abort
命令将代码库恢复到之前的状态,然后再尝试操作。 - axiac