我正在使用 git 针对 subversion 中托管的项目进行开发,使用 git-svn:
git svn clone svn://project/
我的一般工作流程是在主分支上反复编辑和提交,然后通过以下方式提交到 svn 存储库:
git stash
git svn dcommit
git stash apply
'stash' 命令保留的本地修改之一,我不想提交到 svn 存储库,是更改的数据库连接字符串。在没有额外的“存储”步骤的情况下保持这种本地更改的最方便的方法是什么?
我怀疑像 'stash' 或 'quilt' 之类的东西是我正在寻找的东西,但我仍然对 git 足够新,我认为我错过了一些会导致确切咒语的术语。
更新:我发现似乎避免 ++ 系列的唯一解决方案git stash
是手动更新 git-svn ref:git-svn action
git stash apply
(check in local-only change to 'master', then...)
$ cat .git/refs/master > .git/refs/remote/git-svn
$ git svn fetch (with at least one new SVN revision)
这使得仅本地提交成为两个 svn 修订之间的奇怪(可能不安全)提交。