git の使用を確認する
最近、会社の古いプロジェクトを svn から git に移行する必要があり、git コマンドのほとんどが忘れられていたので、レビューと概要を記載します。
ベース
ローカル git バージョンを表示する
git --version
ローカル git 構成情報の表示
git config --list
構成情報を設定する
git config --global user.name "Your Name"
git config --global user.email "[email protected]"
書類の提出
ブランチのマージなどの操作がない場合、git を使用してファイルを送信するおおよその手順は次のとおりです。
1. ステータスを確認する
git status
2. 一時記憶領域に変更を追加する
送信する必要がある変更を追加します。git add .
すべて追加されています。直接使用することはお勧めしません
git add 文件目录 / git add .
3. 現地の倉庫に提出する
git commit -m "描述文本"
4. ローカル倉庫コードを最新のものに更新します。
git pull
5. ローカルの変更をリモートウェアハウスにプッシュします
git push
注: 送信する前にローカル ウェアハウスを同期してください。更新後に競合がある場合は、最初に競合を変更してください。
チェック
最近のいくつかの投稿をチェックしてください
git log
git reflog
git log --pretty=oneline
ファイルの詳細な送信履歴を表示する
git log -p README.md
戻る
git reset --hard commitId
ローカル変更の追加とコミットは両方とも使用前にローカル ウェアハウスにあることに注意してください。そうしないと、ロールバックして戻ってくるとローカル変更が失われます。
git revert
特別な注意: git revert とリセットに慣れていない場合は、使用しないようにしてください。使用する前に、何をしたいのかよく考えてください。元に戻しますか? 消去?または、もう一度確認してください。
使用シナリオの例:
すでに A -> B -> C があり、B に戻りたい場合:
方法 1: B にリセットし、C を失う:
A -> B
C が間違って送信され、削除する必要がある場合は、reset コマンドを使用してロールバックし、リモートにプッシュできます。
方法 2: revert は逆ロールバックを送信し、B になります。
A -> B -> C -> B
C はまだ存在しますが、2 つの B は重複しています
C が変更であり、それを元に戻したい、将来 C に変更する可能性がある場合は、元に戻す必要があります。
誤ってパスワードをリモートに送信した場合は、変更を削除する必要があります。この変更が最初の変更である場合は、リセットして再度プッシュしてください。最初の変更ではない場合、そうすることで次の変更が行われます。失った?特定のコミットIDへのポインタが直接存在し、それを変更して現在のコミットにサブミットできれば良いのですが、今のところそのような機能があるかどうかはわかりません。
変更を元に戻します
git checkout -- readme.txt
一時記憶領域に追加されておらず、キャンセルするとローカル変更が消える場合と、一時記憶領域に追加されているが元に戻すとローカル変更が消えてしまう場合の2通りがあります。一時記憶領域に追加された後の状態に戻ります。
注: ここでの「--」は、「--」を付けないとブランチを切り替えるコマンドになります。
または使用しますgit restore
git restore readme.txt
ワークスペースは変更されましたが、一時記憶域には追加されていません。ワークスペースでの変更を元に戻したい場合は、git list を使用できます。
一時記憶領域に作業領域の変更が追加されている場合は、一時記憶領域と作業領域の両方の変更を元に戻す必要があります
git restore --staged readme.txt
git restore readme.txt
ステージング領域からワークスペースを復元します。
git restore --worktree readme.txt
マスターからステージング領域を復元する
git restore --staged readme.txt
ブランチ
作成
git branch dev
// dev ブランチを作成します
git checkout dev
// dev ブランチに切り替えます
git push origin dev
// ローカルの dev ブランチをリモートにプッシュします
または
git checkout -b dev
// dev ブランチを作成し、dev ブランチに切り替えます。
git push origin dev
// ローカルの dev ブランチをリモートにプッシュします。
git checkout -b dev
これgit branch dev
はgit checkout dev
リモートへのプッシュと同等であり、リモートにはorigin/devのブランチが存在します。
リモートにすでに dev ブランチがある場合は、リモート dev ブランチに基づいてローカル dev ブランチを作成します。
git checkout -b dev origin/dev
git branch -d dev
// ローカルブランチを削除
git branch -D
// ブランチを強制的に削除
切り替える
git checkout 分支名 / git switch 分支名
最新のコマンドであるswitchコマンドの使用を推奨します。
鬼ごっこ
git tag v1.0
ローカルタグをヒットする
git push origin v1.0
ローカルタグをリモートにプッシュします
git push origin --tags
すべてのローカルタグをリモートにプッシュします
git tag -d v1.0
ローカルタグを削除し、削除後にリモートを削除します。オリジンをプッシュする必要もあります
他のコマンド
現在のディレクトリを表示
pwd + Enter
ファイル/フォルダーの作成
タッチ readme.txt
ファイルの内容を表示
cat ファイル名
HEAD ポインタの理解
HEAD ポインタは現在のバージョン ブランチを指すため、異なるバージョン間で切り替えると実際には HEAD ポインタのポイントが変更されるため、異なるバージョン間の切り替えは非常に高速になります。