1

first_app を Git にコミットしようとしています。コマンド ラインに次のように入力しましたが (以下を参照)、コミットするものが何もないという出力が表示されます。

new-host:first_app XXXXXX$ cd /Users/XXXXXX/rails_projects/first_app
new-host:first_app XXXXXX$ git init
Reinitialized existing Git repository in /Users/XXXXXX/rails_projects/first_app/.git/
new-host:first_app XXXXXX$ git add .
new-host:first_app XXXXXX$ git status
# On branch master
nothing to commit (working directory clean)
new-host:first_app XXXXXX$ 

別のターミナルで$ rails server、first_app を作成するために実行しました。コミットするものが何もないのはなぜですか?

どうすればこれを修正できますか? ありがとう!

4

4 に答える 4

7

出力の最初の行に注意してください。

既存の Git リポジトリを再初期化しました

そのディレクトリには既に git リポジトリがあり、コミットされていない変更はありません。

于 2012-11-01T02:24:46.250 に答える
2

した後

git add .

ステージングしたばかりの変更をコミットする必要があります。

git commit -m "my first commit"

コマンドを使用して、最新のコミットを表示できますgit show

于 2012-11-01T02:30:58.820 に答える
1

最初に git リポジトリを作成するときに、以前に追加してコミットしたのではないでしょうか?

私はこれを再現することができました:

durrantm.../aaa$ git init
Initialized empty Git repository in /home/durrantm/play/aaa/.git/
durrantm.../aaa$ l
total 16
drwxrwxr-x 14 durrantm 4096 Oct 31 22:28 ../
-rw-rw-r--  1 durrantm   11 Oct 31 22:29 ggg
drwxrwxr-x  3 durrantm 4096 Oct 31 22:29 ./
drwxrwxr-x  7 durrantm 4096 Oct 31 22:29 .git/
durrantm.../aaa$ git status
# On branch master
#
# Initial commit
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#       ggg
nothing added to commit but untracked files present (use "git add" to track)
durrantm.../aaa$ git add .
durrantm.../aaa$ git status
# On branch master
#
# Initial commit
#
# Changes to be committed:
#   (use "git rm --cached <file>..." to unstage)
#
#       new file:   ggg
#
durrantm.../aaa$ git commit
[master (root-commit) 953c83f] new
 1 file changed, 1 insertion(+)
 create mode 100644 ggg
durrantm.../aaa$ l
total 16
drwxrwxr-x 14 durrantm 4096 Oct 31 22:28 ../
-rw-rw-r--  1 durrantm   11 Oct 31 22:29 ggg
drwxrwxr-x  3 durrantm 4096 Oct 31 22:29 ./
drwxrwxr-x  8 durrantm 4096 Oct 31 22:29 .git/
durrantm.../aaa$ git init
Reinitialized existing Git repository in /home/durrantm/play/aaa/.git/
durrantm.../aaa$ l
total 16
drwxrwxr-x 14 durrantm 4096 Oct 31 22:28 ../
-rw-rw-r--  1 durrantm   11 Oct 31 22:29 ggg
drwxrwxr-x  3 durrantm 4096 Oct 31 22:29 ./
drwxrwxr-x  8 durrantm 4096 Oct 31 22:30 .git/
durrantm.../aaa$ git add .
durrantm.../aaa$ git status
# On branch master
nothing to commit (working directory clean)
durrantm.../aaa$ 
durrantm.../aaa$ git commit
# On branch master
nothing to commit (working directory clean)

あなたが見ているようnothing to commitに、 a の後にどのようにあるのかに注意してください。git add .

1 つの「修正」は、git リポジトリを削除してからやり直すことです。これを行うと、通常どおり最終版をコミットできます。たとえば、次のようになります。

durrantm.../aaa$ rm -rf .git/
durrantm.../aaa$ l
total 12
drwxrwxr-x 14 durrantm 4096 Oct 31 22:28 ../
-rw-rw-r--  1 durrantm   11 Oct 31 22:29 ggg
drwxrwxr-x  2 durrantm 4096 Oct 31 22:34 ./
durrantm.../aaa$ git init
Initialized empty Git repository in /home/durrantm/play/aaa/.git/
durrantm.../aaa$ l
total 16
drwxrwxr-x 14 durrantm 4096 Oct 31 22:28 ../
-rw-rw-r--  1 durrantm   11 Oct 31 22:29 ggg
drwxrwxr-x  3 durrantm 4096 Oct 31 22:34 ./
drwxrwxr-x  7 durrantm 4096 Oct 31 22:34 .git/
durrantm.../aaa$ git add .
durrantm.../aaa$ git commit
[master (root-commit) 380863a] wewew
 1 file changed, 1 insertion(+)
 create mode 100644 ggg
于 2012-11-01T02:31:43.630 に答える
0

そのフォルダーには、初期化された git リポジトリが既にあるようです。すでにすべてのファイルがコミットされている可能性があり、「再初期化」すると、実際には git サービスを再起動しているだけです。多分。ファイルの 1 つを変更してみて、次のコマンドを入力します。

cd /Users/XXXXXX/rails_projects/first_app/
git add .
git commit -a -m "commit message"

それはコミットする必要があります。firstapp/git/ を指すように CD コマンドを変更する必要があるかもしれませんが、正直なところ覚えていません。幸運を!

于 2012-11-01T02:31:08.130 に答える