在git rebase -i
的正常过程中看起来像这样(=>
表示终端命令提示符):
=> git logg
* 7bec976 (HEAD -> develop, origin/develop) Update JANDI task: add Bitcoin topic
* e03aecc Update production.txt:remove pandas and set celery-beat version
* baaaf4b Update JANDI task: Fix link bug
* bb422af Update Procfile: on flower
* 733ca41 Implement JANDI task
rebase -i
:
=> git rebase -i 733ca41
它将通过编辑器打开.git/rebase-merge/git-rebase-todo
:
1 pick bb422af Update Procfile: on flower
2 pick baaaf4b Update JANDI task: Fix link bug
3 pick e03aecc Update production.txt:remove pandas and set celery-beat version
4 pick 7bec976 Update JANDI task: add Bitcoin topic
5
6 # Rebase 733ca41..7bec976 onto 733ca41 (4 commands)
7 #
8 # Commands:
9 # p, pick = use commit
10 # r, reword = use commit, but edit the commit message
11 # e, edit = use commit, but stop for amending
12 # s, squash = use commit, but meld into previous commit
13 # f, fixup = like "squash", but discard this commit's log message
14 # x, exec = run command (the rest of the line) using shell
15 # d, drop = remove commit
16 #
17 # These lines can be re-ordered; they are executed from top to bottom.
18 #
19 # If you remove a line here THAT COMMIT WILL BE LOST.
20 #
21 # However, if you remove everything, the rebase will be aborted.
22 #
23 # Note that empty commits are commented out
然而,在我的Linux 16.04 LTS
上,它的行为如下:
=> git rebase -i 733ca41
Successfully rebased and updated refs/heads/develop.
=>
什么都没打开,什么都没发生......
我不知道这个命令有什么问题。除rebase -i
需要你的帮助。感谢
答案 0 :(得分:1)
检查最新的2.16.x版Git是否仍然存在问题。
但首先,作为seen in this answer,检查环境变量GIT_SEQUENCE_EDITOR
的值
如果设置为“:
”,则会使编辑器步骤不可见。
注意:不需要设置sequence.editor
configuration:
如果未配置,则使用默认提交消息编辑器。
因此请确保core.editor
设置正确,如“Associating text editors with Git”中所示。
答案 1 :(得分:0)
git config --global sequence.editor vim
可以工作:)