4

如果不将它们始终压缩到当前分支中,我似乎无法完整地使用 Magit for Emacs 进行合并。有时在合并后会创建一个新的提交对象(这是我想要的),有时提交会被压缩。

我基本上只想在 Magit 中做 'git merge --no-ff topicbranch'。

那么如何使用 Magit 强制执行 --no-ff 标志/创建新对象规则?

4

1 回答 1

3

也许是因为该补丁已包含在当前的 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})中使用前缀参数

您是否使用前缀参数?

于 2010-05-21T16:26:43.200 回答