Gitに苦労していますが、ファイルを追加できないようです。 ls
を実行して、ファイルが現在のディレクトリにあることを示してから、git add .
その後git status
「コミットするものがありません」と表示されました。
JJ-Computer:first_app JJ$ git init
Reinitialized existing Git repository in /Users/JJ/Rails_projects/first_app/.git/
JJ-Computer:first_app JJ$ ls
Diary.txt README.rdoc config.ru log tmp
Gemfile Rakefile db public vendor
Gemfile.lock app doc script
README config lib test
JJ-Computer:first_app JJ$ git add .
JJ-Computer:first_app Jenn$ git status
# On branch master
nothing to commit (working directory clean)
JJ-Computer:first_app JJ$
あなたのコマンドは正しいように見えます(私は何度もそうしました)。
初挑戦
git add --all
git status
を試してください。それで解決するとは思いませんが、次に試す価値はあります。
次に、.gitignoreファイルがある場合は(git init
を実行した最上位にある)、. gitignoreファイルを確認してください。
cat .gitignore
ファイルが無視される原因となっているリストを削除します。たとえば、*
だけのエントリがありますか?
次の試行:
git add --force
git status
を試してください。
これらのいずれも機能しない場合、git init
からの出力が「初期化」ではなく「再初期化」されているため、何かが台無しになっている可能性があります。初期化したばかりで履歴を失うことを気にしない場合は、最初に.git dirを削除してください:
rm -rf .git
そして、上記と同じコマンドを再実行します。それでもうまくいかない場合は、セットアップに関する追加情報が必要になります。例えば、グローバルな.gitignoreファイルがあります:~/.gitignore_global
は編集する必要があります(必要ない場合は削除します)。
同様の問題を何度も経験しているので、あなたがしようとしていることを再確認する必要があることを追加したいと思いますプロジェクトのルートフォルダーから追加し、現在プロジェクトにあります。
他の誰かがこれにぶつかった場合、gitがディレクトリを追加しないもう1つの理由は、おそらく.git
ディレクトリ内のディレクトリ。
この場合、gitはそれを submodule として扱うことを期待しています。それ以外の場合は、単に.git
(ルートではなくディレクトリ内)および再試行します。
便利なコマンド:
find . -name '.git' -type d
私の場合、私はスタッシングによって解決し、その後すぐにスタッシュを適用しました:
git stash
git stash apply
このシーケンスは、レポジトリを以前とまったく同じように残します。この後、git add [file]
は正常に機能しました。
(suse linuxでgitバージョン1.7.12.4を使用)
何らかの理由で、かなり長い間Google Drive File Streamのディレクトリにリポジトリを置いていたときに、Gitはうまく機能しました。昨日、私は同じ問題に遭遇しました。 git add .
はコミットするものを報告しませんが、git add <some explicit filename>
は問題なく機能しました。ディレクトリをローカルのハードドライブ(Google Drive File Streamから)に移動し、git add .
保留中の変更をすべてピックアップしました。ディレクトリがまだGoogleドライブのファイルストリームにある場合、ディレクトリを「オフラインで使用可能」に設定しても効果がありません。
私の場合、現在のgitディレクトリにgitディレクトリをネストすると発生します:
A1.Java
B1.Java
.git
someDirectory
C1.Java
.git
cd someDirectoy
rm .git -rf
Quux00の.gitignore
回答を補足すると、ビルドマネージャー(Maven)の一時的な 'build'ディレクトリのためにディレクトリが追跡されていないことがわかりました。 Mavenは、プログラムをビルドするときに.gitignore
に 'build'を追加したため、自分のディレクトリ(偶然に 'build'という名前)が追跡されませんでした。これは、「build」ディレクトリの名前を変更することで解決しました。