如何告诉emacs VC当文件在两个版本系统下时,我希望git而不是svn管理文件?

时间:2011-02-20 20:30:06

标签: svn git emacs

我到目前为止使用的是带有git.el的emacs21,所以这不是问题,但现在使用emacs22 git管理集成在VC中,所以我使用vc-git管理我的git文件。当文件仅由git管理时,这是可以的。我可以在状态中看到GIT-master。但是当我编辑由svn(用于稳定提交和组VC)和git(用于我自己和中间提交)管理的文件时,我不知道如何强制使用git完成提交(状态说这是一个svn文件)。任何的想法?

我总是可以使用M-! git status M-! git add等,但是拥有VC快捷方式并在emacs中集成差异非常好。

注意:我没有在moemnt上使用git-svn。这是一个已经svn分支检出,我希望有一些实验性的更改由git控制,直到代码变得稳定,而不是做一个svn子分支。我相信git-svn将是要走的路,但不幸的是我需要花时间阅读它并安装所需的一切。所以我使用的是我已经知道的简单的git。

2 个答案:

答案 0 :(得分:3)

您可以自定义vc-handled-backends并将Git移到Subversion之上。你应该尝试使用git-svn;您可以使用git rebase -igit merge --squash将一堆Git变更集折叠(压缩)到单个Subversion版本中。

答案 1 :(得分:1)

我不确定它是否对您有所帮助,但我将SVN和Git之间的VC后端与C-x v bM-x vc-switch-backend一起更改为两个存储库跟踪的文件。