[Git]Git Branchingの基礎知識を学ぶ
普段Gitを使うのはローカルストレージやバージョンを管理するためですが、今回はGitをもっと活用する機会があるので勉強したいと思います.
優雅なテクノロジー10分🎲 ワイルドカードのGit Commandsでは、羽毛コマンドに関する基礎図を描くことができます.YouTube動画でトレッドミルブランドのサイトをお勧めし、実際の勉強でもっと勉強させてもらいました!
ランナー分岐 Webサイト.このプロセスは約2~3時間かかり、画像とアニメーションでコマンドのコミットによってどのように移動するかを簡単に理解できます.コマンドを使用するアプリケーションの問題も簡単に理解できます.👍
学習できるコースは次のとおりです.
開発コミュニティにおけるmergeとrebase間の取引について,多くの議論を行った.どれもメリットとデメリットがあるので、使いやすいものを選ぶことが大切です.
merge操作の履歴は保持されますが、コミットツリーは不明です. rebase履歴を変更して新しいコミットツリーを作成すると、履歴を変更できますが、コミットツリーをよりきれいにすることができます. 一般的に、海外はmergeが好きで、韓国はrebaseが好きです.
HEADは現在チェックアウトされているコミットを指します.すなわち、これは現在作業中の提出です.HEADは常に「工作機械ツリー」の最近のコミットを指します.「ワークツリー」を変更するGitコマンドの多くは、HEADの変更から始まります.
一度に1つ上に移動してコミット^
履歴修復により、リモートストレージではなくローカルストレージを使用できます.
分の変更を返し、他の人と共有するにはgit retroを使用する必要があります.
インタラクティブベースダイアログボックスを開くと、次の3つの操作を実行できます.は、UIを介して適用するコミット順序 を変更することができる.
不要な提出は削除できます.スカッシュ(スカッシュ) mが可能です.(連結可能コミット)
重要なのは、Gitタグがコミットを追加した後は絶対に移動しないことです.タグはコミットツリーでアンカーとして機能し、特定のポイントを表示します.
リモート・リポジトリのコミットをダウンロードしますが、ローカルではありません. がローカルに示すリモートストレージの状態を、実際のリモートストレージの現在の状態と同期させる. ローカルステータスは変更されません.mainブランチは更新されず、ファイルシステムの外観も変更されません. のデータをダウンロードしますが、ローカルファイルやブランチは本当に変更されません.
📔 学習ギットコマンド
優雅なテクノロジー10分🎲 ワイルドカードのGit Commandsでは、羽毛コマンドに関する基礎図を描くことができます.YouTube動画でトレッドミルブランドのサイトをお勧めし、実際の勉強でもっと勉強させてもらいました!
ランナー分岐 Webサイト.このプロセスは約2~3時間かかり、画像とアニメーションでコマンドのコミットによってどのように移動するかを簡単に理解できます.コマンドを使用するアプリケーションの問題も簡単に理解できます.👍
![](https://s1.md5.ltd/image/00ffd207fcfae3ec220fa692e4bc9877.png)
![](https://s1.md5.ltd/image/3f5d045238e81c3c0d6f4fb4ed88ad55.png)
🔧 マスターコマンド
1. Git merge
git merge <합치고_싶은_브랜치>
2つのブランチをマージする方法の1つです.![](https://s1.md5.ltd/image/42adc6cbdaf73277d2982642a48fbf09.png)
![](https://s1.md5.ltd/image/d6a87908f00fa6ea53b66d751147ace2.png)
2. Git rebase
git rebase <합치고_싶은_브랜치>
2つのブランチをマージする2つ目の方法は、「再ベース」です.コミットを収集してコピーし、別の場所に配置します.![](https://s1.md5.ltd/image/111612bfa4f7de581cd8d358f9fda707.png)
![](https://s1.md5.ltd/image/382f3b4502e90bb517e91bac4014b5cc.png)
⁉️ merge vs rebase
開発コミュニティにおけるmergeとrebase間の取引について,多くの議論を行った.どれもメリットとデメリットがあるので、使いやすいものを選ぶことが大切です.
merge
3.HEADとの相対参照
HEADは現在チェックアウトされているコミットを指します.すなわち、これは現在作業中の提出です.HEADは常に「工作機械ツリー」の最近のコミットを指します.「ワークツリー」を変更するGitコマンドの多くは、HEADの変更から始まります.
HEADの分離:
git checkout <대상>
相対参照の使用方法
一度に1つ上に移動してコミット^
git checkout <대상>^
一度に複数のコミットにジャンプする~numgit checkout <대상>~<올리고_싶은_숫자>
![](https://s1.md5.ltd/image/da6c493658b237a03ea5a35cf1a13f4c.png)
![](https://s1.md5.ltd/image/9a873b072f16c40ef232afcae612b9a8.png)
4. Git reset
git reset <커밋>
git resetは、変更をブランチに戻すことで、以前のコミットを指します.この角度から言えば、「歴史記録の書き換え」と言える.すなわちgit resetは,当初コミットされなかったようにブランチを以前のコミットに移動する.![](https://s1.md5.ltd/image/37cdfad8c07bc146aed3df4b6e04bb3c.png)
![](https://s1.md5.ltd/image/968e9ba19ae474a7789d47bbd13a0dc5.png)
5. Git revert
git revert <커밋>
それぞれのコンピュータで動作するローカルブランチについては、リセット(reset)をうまく書き込むことができますが、「履歴の書き換え」のため、他の人が動作するリモートブランチを書き込むことはできません.![](https://s1.md5.ltd/image/3c9290b8e35f00102f15c4d22add2b1d.png)
![](https://s1.md5.ltd/image/30a54260a538d1e20433c7fafd940bad.png)
6. Git cherry-pick
git cherry-pick <커밋1> <커밋2> <...>
「現在位置」(HEAD)の下にある一連のコミットのコピーの作成を簡略化します.その利点は、希望するコミットを選択できることです.![](https://s1.md5.ltd/image/8bcae9074e0764c5b6405a58e5203bcc.png)
![](https://s1.md5.ltd/image/98453b6bc90d6b643700454f26218bf1.png)
7. Git rebase -i
git rebase -i <대상>~<수정_개수>
rebaseコマンドを使用する場合、-iオプションを一緒に使用します.これは、インタラクティブな基礎を意味します.インタラクティブベースダイアログボックスを開くと、次の3つの操作を実行できます.
不要な提出は削除できます.スカッシュ(スカッシュ)
![](https://s1.md5.ltd/image/74914cfea2c41234d1569fb4a92f0522.png)
![](https://s1.md5.ltd/image/bad776141765abde464dcd5eb1bb191f.png)
8. Git Tag
git tag <태그_이름> <커밋_위치>
Gitタグは、ブランチに示すように、一部のコミットを永続的な「マイルストーン」(マイルストーン)としてマークします.重要なのは、Gitタグがコミットを追加した後は絶対に移動しないことです.タグはコミットツリーでアンカーとして機能し、特定のポイントを表示します.
🚥 リモートストレージ
1. Git clone
git clone <저장소>
git cloneは、リモート・リポジトリのコピーをローカルで作成する際に使用するコマンドです.![](https://s1.md5.ltd/image/30a0ac8b3407de93b31c5d1fad49f310.png)
![](https://s1.md5.ltd/image/2261f646e64c70c26d934439f4eb4797.png)
2. Git fetch
git fetch <브랜치>
リモート・リポジトリからデータをインポートするコマンドをgit fetchと呼びます.git fetchの仕事
Git fetchが実行しない操作
![](https://s1.md5.ltd/image/2361eeb282a4bdf5ec134c56a540c2ff.png)
![](https://s1.md5.ltd/image/5ca273c9f6dc3fba1b7929e49106a52f.png)
3. Git pull
git pull <브랜치>
Git pullは、リモート・リポジトリでの変更を取得し、マージ操作を一度に完了するコマンドです.![](https://s1.md5.ltd/image/81ae87e8570fbeb1c6622bdb2ecfa75a.png)
![](https://s1.md5.ltd/image/b32e323587cbeab3f4685fc3569872fe.png)
4. Git push
git push <브랜치>
git pushでは、変更をリモート・リポジトリにアップロードし、リモート・リポジトリの変更の新しいコミットをマージおよび更新できます.Git pushが完了すると、他の人はリモート・リポジトリからタスクを取得できます.![](https://s1.md5.ltd/image/2d35d8a436dec9927b2c58871b0f1027.png)
![](https://s1.md5.ltd/image/1b8f4ecce9e86f0ad07ae49b9118395f.png)
Reference
この問題について([Git]Git Branchingの基礎知識を学ぶ), 我々は、より多くの情報をここで見つけました https://velog.io/@yh20studio/Git-Learn-Git-Branching로-기초-배워보기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol