3

私は今、SVNオフィスでの個人的なワークフローにGitを採用し始めているので、git-svnは私が大きく依存するツールです。解決方法がわからないという問題に遭遇したのは、一方向で無視する方法です。

私の具体的なユースケースは、antビルドファイルがsvnやsvnversionなどを参照していることです。明らかに、git-svnを使用している場合は、どちらも使用する予定はありません。ローカルのbuild.xmlでそれらを同等のgitに置き換えましたが、これは問題なく機能しています。

しかし、私は明らかにgitsvndcommitでその変更をコミットしたくありません。この変更をローカルに保持し、ローカルでコミットして失わないようにしたいのですが、会社全体でのSVNの使用がほぼ中断されるため、メインのSVNリポジトリにコミットされないようにします。 、 私が行った場合。この質問では、SVNのみを使用した同様のケースが示されています。

build.xmlをローカルでコミットし、SVN(SVNに関係のないものもたくさんあります)からbuild.xmlの変更を引き続き取得し、ジャンプせずにdcommitを使用してコミットしないようにするソリューションはありますか?コミットしようとするたびにフープを介して?

4

1 に答える 1

5

はい、できます。

gitignoreご指摘のとおり、既に追跡されているファイルはできません。しかし、できることは、特定のファイルに対して変更が存在しないふりをするようにインデックスに指示することです。

git update-index --assume-unchanged <file>

そのファイルの変更を無視するのをやめたい場合 (たとえば、build.xml他のチーム メンバーと共有する必要がある変更を行った場合)、次を使用します。

git update-index --no-assume-unchanged <file>

警告:でファイルを直接追加するとgit add <file>、本当にそのファイルを追加したいと思っていると見なされ、--assume-unchangedディレクティブは無視されます。

于 2012-03-08T15:59:50.310 に答える