我想将给定的提交重新设置为当前分支的HEAD。当然,我可以使用git rebase -i <future-head-SHA>~
,然后将其向下移动到HEAD(如this question中所述),但是我想使这一过程自动化。
有没有一种整齐的方法可以做到这一点?
谢谢
答案 0 :(得分:2)
不是。交互式rebase是设计用于执行此类操作的唯一工具。假设您可以编写此脚本,
rebase -i
指令的列表(通常是您在编辑器中进行编辑的文件),然后将重新排序的列表写回到该文件。只要您已安装GNU sed(其他版本的sed通常不支持-i
标志),以下内容应该可以工作:
GIT_SEQUENCE_EDITOR="sed -i -e '1 {h; d}; $ {p; g}'" git rebase -i <commit>~
答案 1 :(得分:-1)
git rebase commit-id
此命令为您完成工作。