私は Git の使い方を学ぼうとしています。プルやプッシュなどの基本はある程度理解できましたが、削除について混乱しています。
これは私が行ったことです(fortrabbitとlaravelを使用):
- Laravel プロジェクトを作成しました
git init .
プロジェクトフォルダで実行- 走る
git remote add origin ...
- 走る
git add -A
- 走る
git commit -am 'Initial'
- 走る
git push -u origin master
これで、ローカル コピーがリモート コピーと一致します。
ファイルを削除したいので、テストファイルを作成します。
- 走る
touch testfile1.php
ファイルを追加し、コミットしてからプッシュします。これで、ローカルとリモートにテスト ファイルができました。
問題はそれを削除することです。この質問は 2 つの部分に分かれています。
この SO の質問を読む: How can I delete a file from git repo? それは私がすべきだと言っています:
git rm testfile1.php
git commit -m 'deleted file'
git push origin master
ただし、それはローカル コピーのみを削除します。リモートコピーはまだあります!
ローカル コピーから削除すると、リモート バージョンからもどのように削除されますか?
2 番目の質問は、他の誰かがコピーを持っている場合、私がファイルを削除したことをどのようにして知ることができるのでしょうか? 彼らが自分のコピーをリモートにプッシュした場合、削除されたファイルが再び追加されるだけではないでしょうか?
どんな助けでも大歓迎です。
編集
これはコマンドの出力と、git rm
コマンド後のリモート バージョンです。
最初の画像は、git rm testfile1.php
ファイルを入力している私です。次に、出力rm testfile1.php
してプロンプトに戻ります。リモート バージョンに SSH で戻ると、testfile`.php はまだそこにあります:/
別の編集
Fortrabbit が提供するいくつかのヘルプ記事を読んでいます。主に次の記事です: http://help.fortrabbit.com/git#toc-behind-the-scenes
上書きすると書いてありますが、削除はしません。
これが git が最新だと言っているのに、ファイルがまだ Web ルートにある理由でしょうか? もしそうなら、どのような理由で私が削除を依頼したファイルを削除しない可能性があるのでしょうか?!