2016-11-06 5 views
0

git statusのときは、私のgit repos(githubで管理されているhttps://github.com/quchunguang/test)のファイルは常に "deleted"状態のままです。何もできない "削除された"ファイルを永久に残すことの問題

私はgit addです。git rmできません。それを削除するには他のことをしないでください。 git fsck --fullを試しましたが、エラーは検出されませんでした。 リポジトリ全体を削除し、git cloneをgithubから削除しましたが、まだそこに問題があります。

これは私のWindows 10 64ビットシステムで、git 64ビット(gitバージョン2.8.0.windows.1)で発生しました。

$ git status 
On branch master 
Your branch is ahead of 'origin/master' by 1 commit. 
    (use "git push" to publish your local commits) 
Changes not staged for commit: 
    (use "git add/rm <file>..." to update what will be committed) 
    (use "git checkout -- <file>..." to discard changes in working directory) 

     deleted: run_myscript.py 

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

おそらく、「何か」が「run_myscript.py」を削除しました。 'git status'を実行してもファイルはそこにありますか?助けを得るためには、 'git clone'から' git status'までの完全なシナリオなど、より多くの情報を提供する必要があります。 –

答えて

0

"run_myscript.py"と "run_myscript.py"の2つのファイルがリポジトリに同じ内容であります。

Windowsファイルシステムは、ファイル名の末尾のスペースを無視(削除)するので、 "run_myscript.py"がクローン作成中に "run_myscript.py"によって上書きされ、gitがそれに不満を持ちます彼は "run_myscript.py"を見つけることができません。

あなたは、以下のコマンドによって問題を解決することができます:「run_myscript.py」(末尾のスペースのない1)が何らかの形でファイルシステムからgit rmによって削除されているので、最後のチェックアウトが必要とされている

git rm "testpy/ipython/run_myscript.py " 
git commit -m "Remove a duplicate of run_myscript.py." 
git checkout testpy/ipython/run_myscript.py 

注意。

-1

この動作は正しいです。ファイル 'run_myscript.py'が作業ディレクトリから削除されたときは、何もできません(git addまたはgit rmなど)。

まず、git statusを実行したときに削除されたステータスが表示される理由を見てみましょう。ファイル 'run_myscript.py'が追跡され、ローカルリポジトリにいくつかのバージョンが存在したためです。

しかし、ファイルのバージョン管理(削除したので)をしたくないです。

git statusを使用すると、情報が報告されます。あなたがそれ以上のバージョン管理をする必要がないときは気にしないでください。次回の変更をコミットすると、表示されません。

本当にgit statusで与えられた情報を気にしているのであれば、git commit –a –m ‘info’を使ってください。 git statusで作業ツリーをきれいにすることができます。

関連する問題