[Git] 🛠 Git、Githubの使い方と内容を整理する


💎 概要


4年生の専門科目S/W工学の授業を聞きながら、DevOpsについての内容を聞いて、それをDevelopgに整理して、自分の文章を発表します!
継続的な統合/継続的な配信(CI/CD)パイプラインは、より信頼性の高い修正されたコードをより頻繁に導入できるソフトウェアを実装する方法です.したがって,これらのCI/CD開発文化はDevOptisツールによって発展したものであり,これは段階的な開発において特定のDevOptisを用いて効率的な管理と実行が可能であることを意味する.
ついて来い!この投稿はGitを理解します.また、Githubについても説明し、リモートストレージとローカルストレージの間でプッシュとプッシュを行う方法についても説明します.

💎 Git


🍫 Git


Gitが開発者なら基本必須!敵のDevOpsと言える.これは、複数の開発者間の協力を促進するだけでなく、チーム共有タスクを最適化するツール分散型VCS構造も含まれているためです.
また、誰がいつ何を修正したのかを追跡し、修正の内容を返すことができるので、知っておく必要があるツールだと思います.
これらGitは広く用いられているDevOpsであり,Version−controlはCI/CDにおいても非常に有用であるためである.

🍫 Git structure



GitはWorking Directory、Staging Area、gitディレクトリに分けて考えることができます.この構造はmodified、standing、committedの3段階に分けて考えることができますが、見てみましょう.
- Working Directory
現在作業中のworkdirectoryでは、ユーザーのローカルコンピュータで作業した後に変更されたファイルが存在する可能性があります.これを修正後の状態と見なすことができ、これらの修正後の内容を適用するにはstaging領域に送信する必要があります!これらのタスクはStage Fixesと見なすことができます.
- Staging Area
以前に行った変更ファイルをstaging領域に送信すると、そのポイントでコミットできます.この領域はcommitを介して静止状態にある.gitディレクトリに必要な文を追加して、どのような内容を説明する操作を追加できます.また、Staging Areaはキャッシュ領域であることを覚えておいてください!
- .git directory(Repository)
もしあなたが最後に約束したら.gitディレクトリにコミットのステータスが表示されます.これは、私たちが働いていた「作業ディレクトリ」に再びチェックアウトし、必要なタスクを実行し、staging areaを通じてgit repositoryにコミット内容を渡すことで完了します.

🍫 Git command


まずm 1 macbookpro環境でgit環境を設定してくれました!!
(Gitのhomebrewインストールが完了したとします!)
// git 설치
brew install git

git --version
homebrewを使用してgitをインストールしgitのバージョンを表示できます!!
以下は基本Gitを実行するプロセスです!!
// .git 파일 생성하기
git init

// stage 영역으로 file 추가 
// add .하게 되면 모든 변경 파일 stage영역으로 
git add <file>

// modified, staged 상태 확인하기
git status

// 커밋하기
// -am 은 add를 생략하고 add와 commit을 동시에 수행
git commit -m "~"
git commit -am "~"

// name은 사용자 이름, email은 사용자 이메일 설정하기
git config --global user.name '~~'
git config --gloabl user.email '~~'

// git의 commit된 내용들, 현재 head가 가리키는 branch 확인 등 로그를 확인
git log

🍫 Git branch & command


branch宿題はその名の通り枝切りです!このミッションにより、Gitは既存のミッションに触れずに新しいミッションを行うことができます!!次の写真を見れば分かります.

図に示すように、C 1部分から分岐して、C 2とC 3の新しい分岐を生成することができる.これは、ブランチに戻ることも、それぞれ作成したブランチで操作することもできます.Headが指す部分は現在の動作状態であり,最初に生成されたheadはmasterとして動作する.

これらのブランチをマージするプロセスも重要です.fast-forwarding方式は、上図に示すように、c 2にc 3、c 4の分岐が存在し、c 4の動作が以前のc 2の動作と一致してマージされることを意味する.これは、前のタスクの内容を含んでマージを続行するプロセスと見なすことができます.

もう1つの3つの合併プロセスは、前の2つの分岐のc 3、c 4の分岐を比較して合併するプロセスである.しかし、いつでもお互いの仕事内容が一致しない可能性があります.そのため、エラーが発生することがあります.そのため、merge coflictを除去する必要があります.これはgitが開発者にファイルの順序を調整したり、ファイルの内容を変更したりすることを伝えることで解消できます.
// branch 생성하기
git branch <branch name>

// 현재의 branch에서 입력된 branch와 merge 수행
git merge <branch name>

// 입력된 branch로 분기
git checkout <branch name>

💎 Github


🍫 Github


では、これまでGitHubについて知りましたが、それは何ですか?githubはgitとは明らかに異なるサービスであり、リモートリポジトリサービスでgitを使用して管理できるサーバである.
githubを使用すると、githubアカウントのrepositoryにファイルをローカルで直接アップロードしてダウンロードできます.言い換えればgithubはgitのリモートストレージサービスの一つと考えられる!

🍫 Github commands


githubを使うために当然!githubのアカウントが必要です.
👉 https://github.com/
会員加入と同時にgithubを利用できます.
以前はpushをパスワードで入力できましたが、personal access tokenで認証できるようになりましたので、setting->developer set->personal access tokens->generate tokenステップでトークンを作成して覚えておく必要があります.△メモをとるには、これ以上見るわけにはいかない.手帳に記入する.
// github의 원격저장소와 연결하기
git remote add origin <remote repository URL>

// github 원격저장소 파일들 내려받기 
// 마지막에 .을 입력하면 폴더는 생략하고 내용들을 받아옴
git clone <remote repository URL>

// 원격저장소로 내용 push
git push origin <branch name>

// 원격저장소의 내용을 가져옴
git pull

// fetch는 내용을 가져오고 바로 반영하지 않음
// merge 명령을 통해 로컬 working directory에 반영할 수 있음
git fetch origin

// fork는 git 명령어가 아님!!!!

💎 整理する


こんなに簡単なのに、授業で習ったGitとGithubの内容を要約して復習しました.将来の開発者にとって,連携ツールとして最も多く使用されるDevOps Gitを理解することが必要である.使うとエラーが発生しますが、よく使って熟知しなければなりません!
もう四月の半分を過ぎた.S/W工程課で他の内容を復習している間に他のDevOpsを整理しましょう!
がんばって!