2

私は次の指示に従いました:通常の Git リポジトリを裸のリポジトリに変換する方法は? 次に、メインリポジトリにプッシュしようとしましたが、test.txtファイル内のテキストを変更しただけです。

押してみると、出力で仕事が終わりました

1 file changed, 1 line added...

しかし、FTP に接続して test.txt ファイルを表示すると、そこにはありませんでした。

これは私が使用したコマンドです:

git push ssh://username@domain:22/~/repo

コマンドを次のように変更する必要があると思いますか。

git push ssh://username@domain:22/~/repo/reponame.git master

私は今これをやったので、時間がかかるので応答を待っています..

4

1 に答える 1

1

ベア リポジトリには作業コピーがありません。

しかし、ftp に接続して test.txt ファイルを確認したところ、そこにはありませんでした。

つまり、test.txt のようなチェックアウトされたファイルはありません。

(.git/objects データベースに) 存在することを確認したい場合は、(そのサーバーで) 次のいずれかを使用します。

git ls-files -- test.txt
git archive HEAD -- test.txt > test.tar

git cat-file -p master:test.txt

または、リポジトリを別の場所に複製して、ファイルが含まれていることを確認します。

プッシュに使用したクライアントから、リモートと比較できます

git remote add server ssh://username@domain:22/~/repo
git remote update --prune

たとえば、

git log --left-right --graph --oneline HEAD ... server/master

どのコミットがそれぞれのブランチの 1 つだけにあるのかを正確に確認できます。あるいは

git diff --stat server/master

ローカル HEAD とリモート マスター ブランチの違いを一覧表示する

于 2013-03-28T07:33:19.313 に答える