如果不将它们始终压缩到当前分支中,我似乎无法完整地使用 Magit for Emacs 进行合并。有时在合并后会创建一个新的提交对象(这是我想要的),有时提交会被压缩。
我基本上只想在 Magit 中做 'git merge --no-ff topicbranch'。
那么如何使用 Magit 强制执行 --no-ff 标志/创建新对象规则?
也许是因为该补丁已包含在当前的 Magit 中?
(defun magit-manual-merge (rev)
- (interactive (list (magit-read-rev "Manually merge" (magit-guess-branch))))
+ (interactive (list (magit-read-rev (concat "Manually merge"
+ (if current-prefix-arg " (squashed)" ""))
+ (magit-guess-branch))))
(if rev
- (magit-run-git "merge" "--no-ff" "--no-commit"
+ (magit-run-git "merge" "--no-commit" (if current-prefix-arg "--squash" "--no-ff")
(magit-rev-to-git rev))))
如果您想压缩合并(让 git 避免创建合并提交),请在命令 (
@kbd{C-U m}
)中使用前缀参数
您是否使用前缀参数?