2011-06-04 7 views
3

私はGoogleのコードに公開されたsvnリポジトリを公開していますが、ローカルではさまざまな理由でgitに切り替えました。私は現在、googlecodeリポジトリにアクセスできる唯一の開発者ですので、フェッチを行う必要はありません。すべてのコミットはdevブランチ経由で、マスターブランチのsvnへ、git svn dcommitで行われます。すべてうまい。今私は、gitを使ってバージョンコントロールでローカルにいくつかのファイルを持っている状況に陥っていますが、私はそれらを公に利用できるようにしたくありません。gitは認識しますが(リモート)svnは無視します

私はアイデアを持っていました。プライベートディレクトリを作成し、svn:ignore "private/*"プロパティを自分のsvnリポジトリに追加します。しかし、より後で

git svn dcommmit 

エラーが表示されます。コミット時にマージの競合が発生しました:ファイルまたはディレクトリ '。'期限が切れています;更新を試みてください:リソースが古くなりました。/usr/local/git/libexec/git-core/git-svn行で更新してみてください。574

svn:ignoreプロパティを.git/info/excludeにインポートしようとしましたが、プライベート 'gitからは間違いなく私が望むものです。

[2011年8月6日]

私は、エラーが原因のsvnのものではないと思う:無視しますが、何らかの他の未知の理由:無視し、GitのSVNは完全にSVNを無視しているようです。質問は次のようになります。--ignore-パス

+0

は、そのプロパティを追加してからプルしてマージしようとしましたか? – damianb

+0

しました:git svn rebase/git svn fetch、pullがgit-svnでどのように動作しているかわからないのですか? –

+0

私はフェッチを意味しました、申し訳ありません。暗闇の中でショットを撮って、すぐに簡単に出かけることができたかどうかを確認しました。これはgitプロ用のものです。それは良い質問です、だから+1。 – damianb

答えて

0

git svn fetchからのパスを除外することが可能であるとして、それは同じようにgit svn dcommitからパスを除外することが可能であるgit-svn manページでは、これは、次の設定キーで可能であることを示している。

svn-remote.<name>.ignore-paths 
+0

あなたの答えをありがとう、私は私の探求中にこの旗も見たと思います。当時、私はそれを片方向のブロックとして読みました:svn - > gitから。 'これは、SVNからのすべての一致するパスをスキップするPerl正規表現を指定することを許可します。 --ignore-pathsオプションは、特定のリポジトリのフェッチ(クローン、dcommit、rebaseなどによる自動フェッチを含む)と一致する必要があります。 ' 私はもう一度それを読んでいます。英語は私の母国語ではありません。一般的に私はマンページ(特にgitのもの)を間違って読む傾向があります。 –

1

git-svnはsvn:ignoreを無視しますが、SmartGitはSmartGitを使用してリポジトリをチェックアウトすると表示されません。対応する.gitignoreファイルに変換します。逆も同様です。 だから、git-svnの代わりにSmartGitを使うことをお勧めします。

+0

チップのおかげで、私はsmartgitを試してみます。 –

関連する問題