[オープンソースソフトウェア開発]Git Basics

5288 ワード

クリーンアップ用語


-Version Control System
コードまたは関連ファイルを変更するたびに、各バージョンが記録され、リポジトリ内のシステムに管理されます.
-REpositories(リポジトリ)
ファイルを保存する場所です.リポジトリ内のファイルを直接変更するのではなく、リポジトリ内のファイルバージョンをコピーしてリポジトリに反映します.通常、ソースコードやコンストラクション設定ファイル、画像、テキストを保存できます.
-Git
これはレヌストワーズが作成したVCS(バージョン管理ツール)です.ユーザーが作成したソースコードなどを圧縮してリポジトリに保存し、変更履歴を参照またはロードできるのが特徴です.
-送信
これは、リポジトリに意味のある変更操作を記録することを意味します.

ネクタイシステム


三つの分野に分かれている.

-Working directory
ユーザーが作業しているスペース.直接表示または変更を編集すると、これらの変更はすぐにリポジトリに反映されません.
-Staging Area
リポジトリに反映するファイルを選択し、コミットする準備をするスペース.選択したファイルの変更はStaging Areaに保存されます.
-Repository(local)
コミット後、Staging Areaの内容はリビジョン単位でRepositoryに反映されます.

ファイルのライフサイクル



-untracked
追跡されていないファイルは、既存のプロジェクトでGitを初期化したり、新しいファイルを作成したりしたときに追跡されていません.
-unmodified
リポジトリに格納されているファイルと作業ディレクトリに格納されているファイルがまったく同じ場合の状態.
-modified
checkout後に変更がありますが、まだ段階に入っていません.変更されたファイルのみがstaging領域に移行できます.
-staged
変更されたファイルをコミットに反映するためにstaging領域にアップロードします.

しゅうせいめいれい



-git add
作業ディレクトリで作成または変更したファイルをstaging領域に移動するコマンド.
-git commit
ステージに上がったファイルをリポジトリに保存するコマンドです.通常、-mを使用してコミットメッセージとともに保存されます.
-git status
羽毛庫のファイルステータスを表示できるようになりました.
-git log
修正した人、修正した時間、修正した歴史を知ることができます.
-git rm
ファイルを削除してステージにアップロードします.
-git restore
変更前にコミットされた状態に戻ります.

練習-gugudanプログラムの保存


-ユーザー情報の設定
user@DESKTOP-BASIT38 MINGW64 ~/Documents/git
$ git config --global user.name "Minkyung Ko"

user@DESKTOP-BASIT38 MINGW64 ~/Documents/git
$ git config --global user.email "[email protected]"

user@DESKTOP-BASIT38 MINGW64 ~/Documents/git
$ git init
Initialized empty Git repository in C:/Users/user/Documents/git/.git/
-ソースコードを追加(5セグメント出力)
user@DESKTOP-BASIT38 MINGW64 ~/Documents/git (master)
$ git commit -m "Adding files"
[master (root-commit) 7e391de] Adding files
 1 file changed, 6 insertions(+)
 create mode 100644 aa.cpp
-ソースコードを変更してコミット(1~9セグメント出力に変更)
user@DESKTOP-BASIT38 MINGW64 ~/Documents/git (master)
$ git status
On branch master
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        modified:   aa.cpp

no changes added to commit (use "git add" and/or "git commit -a")

user@DESKTOP-BASIT38 MINGW64 ~/Documents/git (master)
$ git add aa.cpp

user@DESKTOP-BASIT38 MINGW64 ~/Documents/git (master)
$ git commit -m "Modifying files"
[master 204077b] Modifying files
 1 file changed, 6 insertions(+), 3 deletions(-)
-ファイルの削除とコミット
user@DESKTOP-BASIT38 MINGW64 ~/Documents/git (master)
$ git status
On branch master
Changes not staged for commit:
  (use "git add/rm <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        deleted:    aa.cpp

no changes added to commit (use "git add" and/or "git commit -a")

user@DESKTOP-BASIT38 MINGW64 ~/Documents/git (master)
$ git add aa.cpp

user@DESKTOP-BASIT38 MINGW64 ~/Documents/git (master)
$ git commit -m "Deleting files"
[master e086df6] Deleting files
 1 file changed, 9 deletions(-)
 delete mode 100644 aa.cpp
-ログ
user@DESKTOP-BASIT38 MINGW64 ~/Documents/git (master)
$ git log
commit e086df612a48342476e1325ed7580e91aad7e20f (HEAD -> master)
Author: Minkyung Ko <[email protected]>
Date:   Sun Mar 20 21:57:38 2022 +0900

    Deleting files

commit 204077b4fec5ce40469a1ef3776cfa0d093562b2
Author: Minkyung Ko <[email protected]>
Date:   Sun Mar 20 21:55:12 2022 +0900

    Modifying files

commit 7e391de393739e0cfb99b96f22d48dae4938cca2
Author: Minkyung Ko <[email protected]>
Date:   Sun Mar 20 21:52:02 2022 +0900

    Adding files
3つのコミットレコードを表示できます!!