2012-01-27 10 views
6

ここに基本的な問題があります: gitは変更がないのにすべてのファイルを変更済みとマークしているようです。 diffでさえも違いは見られませんが、私はすべてのファイルを新たにステージング/コミットしたいと思っています。どのようにしてgitに、その時点から行われた変更を追跡する方法に変更がないことを納得させることができますか?gitは変更されていないファイルを変更したものとしてマークします

私はgitリポジトリを2つの別々のコンピュータで編集しています(どちらもMacです)。 USBスティックで暗号化されたファイルシステムイメージを使用してそれらを転送し、rsyncを使用してコピーします。ファイルをラップトップに転送すると、すべてのファイルが変更済みとしてマークされます。 gitを無視してファイルを処理してrsyncを実行すると、もう一方のマシンは変更されたファイルだけを正しく認識します。だからそれはうまくいきますが、自分のノートパソコンで作業しているときに変更をコミットすることができないときは本当に不便です。他のマシンに戻るまでには、1回のチェックインでいくつかの変更を行う必要があります。

答えて

5

結局のところ、行末ではありませんでした。私はgitがすべての行を変更したように見せていると仮定して解決策を疑った。しかし、今日私は自分の作業マシンでファイルをチェックインしたときにログに記録された小さなエントリを見つけました - ファイルアクセス権はマシン間で転送されている間にを644から755(あるいはその逆)に変更しました。

ソリューションは、この質問にstackoverflowの上で右ここにある:How do I make git ignore mode changes (chmod)?

+0

はどうもありがとうございました! – glaz666

3

転送中に行末が変更されているかどうかを確認します。これは対処するのが大変なことですが、this questionに記載されているように、core.autocrlfオプションを使用して制御することができます。

GitHub's help section on line endingsもこのタイプの問題に対処するためのアドバイスがあります(実際に問題があると仮定して)。

関連する問題