Gitはファイルの変更、取り消し、削除を管理する
5144 ワード
コメント:
廖雪峰先生のブログGitチュートリアルを参考にします.そのブログに基づいて学習と記録を行い、無私な共有に感謝し、原文を参照することを歓迎します.
インテリジェントポイント
git checkout -- file
は、git add
の場合と同様に、git checkout -- file
はワークスペースのファイルを一時保存領域(stage)と一致するgit checkout -- file
コマンドのうち、--
がないと「別のブランチに切り替える」コマンド git reset HEAD file
は、バージョンをロールバックすることもできるし、一時保存領域に追加された変更をワークスペースにロールバックすることもでき、HEAD
は最新バージョンgit rm file
、git commit -m"..."
変更の管理
Gitは他のバージョンの制御システムとは異なり、Gitはファイルではなく修正を追跡し、管理しています.
行の追加、行の削除、文字の変更、内容の追加、新しいファイルの作成など、すべて変更
Gitは、元のファイルを管理するのではなく、一時保存領域に入れられた変更をコミットすることで、変更を管理します.
##修正を取り消す
実際には、(頻繁には発生しませんが)修正を取り消す必要がある問題が常に発生します.
liu@liu-virtual-machine:~/gitTest$ cat readme.txt
`this is a test that I learning and use git version control system
this is a beginning
i Add a new line information in the end of readme.txt file
$%^%&^*&&(**)(*)*&^*(*&&*&YTRYYIN
git addが一時保存領域に追加されていない場合の取り消し
git status
は次のように表示されます:liu@liu-virtual-machine:~/gitTest$ git status
master
:
( "git add ..." )
( "git checkout -- ..." )
: readme.txt
( "git add" / "git commit -a")
git checkout -- file
ワークスペースの変更を破棄することができますgit checkout -- readme.txt
git checkout -- readme.txt
は、readme.txt
ファイルのワークスペースでの修正をすべて取り消します.git checkout -- file
は、git add
と同じ状態にファイルを取り消します.つまり、git checkout -- file
はワークスペースのファイルを一時保存領域(stage)と一致するように取り消します.git checkout -- file
は一時保存領域に作用し、git addが一時保存領域に追加された後、git statusはgit checkout -- file
コマンドプロンプトを表示しないセルフテスト可能
$ cat readme.txt
`this is a test that I learning and use git version control system
this is a beginning
i Add a new line information in the end of readme.txt file
git checkout -- file
命令中、なければ--
は、「別のブランチに切り替える」コマンドになりますgit addが一時保存領域に追加された後の取り消し
git add
の後、取り消す必要があることがわかりました.git status
のステータスを確認します.$ git status
master
:
( "git reset HEAD ..." )
: readme.txt
Gitプロンプトは、
git reset HEAD file
を使用して、一時保存領域に追加された変更を取り消すことができる(unstage
)$ git reset HEAD readme.txt
:
M readme.txt
git reset
は、バージョンをロールバックすることもできるし、一時保存領域に追加された変更をワークスペースにロールバックすることもでき、HEAD
は最新バージョンgit status
を表示し、一時保存領域は修正されず、清潔であり、作業領域は修正されている.$ git status
master
:
( "git add ..." )
( "git checkout -- ..." )
: readme.txt
( "git add" / "git commit -a")
git checkout -- readme.txt
を使用してワークスペースの変更を破棄できます.その後、変更されたファイルが元の状態に戻ったことを確認します.$ git checkout -- readme.txt
$ cat readme.txt
`this is a test that I learning and use git version control system
this is a beginning
i Add a new line information in the end of readme.txt file
取り消し成功
git commitコミット後の取り消し
バージョンライブラリにコミットされた
commit
の取り消しについては、バージョンを使用して変更をロールバックできます.リモート・ウェアハウスをコミットした場合は、別途処理する必要があります.
ファイルの削除
Gitでは、削除も修正操作である.
まず
test.txt
ファイルを新規作成し、倉庫に追加して提出します.$ rm test.txt
$ git status
master
:
( "git add/rm ..." )
( "git checkout -- ..." )
: test.txt
( "git add" / "git commit -a")
git status
は、test.txt
ファイルが削除されたことを示します.バージョンライブラリからファイルを削除する
git rm
を使用してファイルを削除しgit commit $ git rm test.txt
rm 'test.txt'
$ git status
master
:
( "git reset HEAD ..." )
: test.txt
$ git commit -m"remove test.txt"
[master 6a0f133] remove test.txt
1 file changed, 0 insertions(+), 0 deletions(-)
delete mode 100644 test.txt
$ git status
master
,
誤って削除されたファイルを一時保存領域から復元
git checkout -- file
を使用して、一時保存領域から誤削除ファイル(本質的にはワーク領域の変更を破棄するか)$ git checkout -- test.txt
リファレンス
Gitチュートリアル:https://www.liaoxuefeng.com/w...