Windowsマシンのgitに問題があります。私は常にすべてのリポジトリで変更されたいくつかのgitファイルを持っていますが、変更されたものとして表示されるファイルは同じです。
新しいリポジトリのクローンを作成し、tortoisegitを使用してコミットすると、リポジトリ内の1つのファイルに触れたことがない場合でも、一部のファイルが変更されていることがわかります。 「gitstatus」は変更を表示しませんが
どんな助けでも大歓迎です。ありがとう
変更が単にファイルのアクセス許可の変更であるかどうかを確認します。これが私の場合の理由で、TortoiseGitとGitExtensionsの両方が変更されていないファイルを表示しました。
git config core.fileMode false
を使用して chmodの違いを無視 (または。git/configファイルを直接編集します)。
これをgit config --global core.filemode false
のグローバル設定として設定することもできます。
改行の問題です。これをWindowsマシンに設定します。
git config --global core.autocrlf true
提案された修正はどれも私にはうまくいきませんでした。しかし、私はCygwinをインストールし、TortoiseGitはインストール時にそのパスを取得しました。公式のGitパッケージをインストールして解決し、TortoiseGitのパスを変更しました。
TortoiseGitをCygwingitで使用する場合(公式にはサポートされていません)、いくつかの追加のセットアップ手順を実行する必要があります。
[CYGWIN-INSTALL-PATH]\bin-folder
をgit.exeフォルダーとして選択します。
CygwinとTortoiseGitが同じホームディレクトリとグローバルgit-configを使用するように、WindowsでHOME
環境変数を構成します。ここでは通常のWindows表記を使用します(例:C:\Users\USERNAME
)。デフォルトでは、TortoiseGitは通常c:\ Usersの下にあるWindowsホームディレクトリを使用し、Cygwinは[CYGWIN-INSTALL-PATH]\home
の下にある独自のホームディレクトリを使用します。
AutoCrLf
を設定します。これは、TortoiseGitとCygwinGitのデフォルトが異なるために必要です。 CygwinGitのデフォルトはtrue
です。
TortoiseGitに移動し、Advanced Settings
というセクションに移動し、CygwinHack
をtrue
に設定して、cygwinの回避策をアクティブにします。
リブート。
ステップ4は非常に重要であり、私にとって問題を解決しました。
リファレンス(Cygwin Gitセクションを参照): https://tortoisegit.org/docs/tortoisegit/tgit-dug-settings.html
私はちょうどこの問題を抱えていました、そして私にとって修正は非常に簡単であることがわかりました。
現在実行中のgitプロセスがないことを確認してから、.git\index.lock
を削除します。
この後、私のファイルの変更された状態は正しく処理されました。
他の誰かを助けるかもしれないので、ここに答えとして投稿するだけです。
CygwinとTortoiseGitがインストールされている場合、0行を追加して0行を削除してコードをマージしようとすると、多くのファイルが表示されるだけで、ちょっとイライラします。
上記のオプションをgitconfigに追加しようとしましたが、役に立ちませんでした。
任意のフォルダを右クリックするだけで、
亀の設定->一般->初回ウィザードの再実行
ここで、他のGit.exeをポイントしてgit.exeへのパスを変更できます。また、Gitbashがインストールされている場合は、そのgit.exeもポイントできます。既存のパスがCygwin/bin/git.exeからのものであり、他のgit.exeに更新されていることを確認してください。