2012-04-11 32 views
5

今日は2回目の今日はgit commit -m "don't quit me now"が私の全レポを削除します。だから、行く:git commitリポジトリ内のすべてのファイルを削除する

$ git add . 
$ git commit -m "please, be gentle" 

[master 7af0e9c] please, be gentle 
140 files changed, 0 insertions(+), 3186 deletions(-) 
delete mode 100644 .DS_Store 
delete mode 100644 .gitignore 
delete mode 100644 .rspec 
delete mode 100644 Gemfile 
... 

私は、コマンドラインと一緒にMac用のGithubを使用して、それが何らかの形で物事をいまいましくかどう思ってきました。すべてが何かを行う前に、削除のために上演されていることを示していますgit statusので

$ git checkout 
$ git status 
# On branch master 
# Your branch is ahead of 'origin/master' by 1 commit. 
# 
# Changes to be committed: 
# (use "git reset HEAD <file>..." to unstage) 
# 
# deleted: .DS_Store 
# deleted: .gitignore 
# deleted: .rspec 
# deleted: Gemfile 
# deleted: Gemfile.lock 
+1

'git add 'を実行する前にリポジトリの状態(' git status'で取得したもの)は何ですか? –

+0

はあなたの環境変数 'GIT_DIR'または' GIT_WORK_TREE'セットですか? – VonC

+0

このような振舞いの前例はあまり有益ではありませんでした:http://stackoverflow.com/questions/6180151/git-commit-without-file-name-and-without-a。あなたはあなたのレポをクローンし、そこに変更を加えてコミットしようとすると、問題は解決しませんか? – VonC

答えて

4

は、HEADにインデックスをリセット:

git reset HEAD 

これを実行した後、git statusエコーすべき

no changes added to commit (use "git add" and/or "git commit -a") 

次に、もう一度お試しください:

git add . 
git commit -m "new try" 
+0

ありがとうございます、レポは正常に戻ります。しかし、私はそれがどのように最初の場所で狂った状態になったのか分からないのは不愉快です。私はrepo上の唯一のユーザーで、基本的なコマンドを使用しています。 –

+0

この修正に関するもう1つの点は、記述されているとおりに進まなかったことです。 'git status'は実際には削除のためのファイル群を示していますが、そのほとんどは追跡されていません。 'git add。'それらをrepoに戻します。面白いことに、私は歴史の中で最後のコミット「新しい試み」を見ていない。奇妙なもの。 –

+0

これはまだ動作していません。 'git commit'は私のレポをもう一度クリアしました。今私は 'git add 'に応答していないように見えないフォルダやファイルをたくさん持っています。 –

関連する問題