#author("2022-04-20T15:28:12+09:00","default:k1rou","k1rou")
#author("2022-05-04T09:09:10+09:00","default:k1rou","k1rou")
*Git とは [#tfcbfa31]
-分散型の[[バージョン管理ツール]]
-[[DVCS]] (Distributed Version Control System)
*Gitの特徴 [#vf96d7ab]
-ローカルリポジトリ
*Gitの機能 [#yfd71f8d]
-マージリクエスト(GitLab)
-プルリクエスト(GitHub)
*関連サービス [#nd60f580]
-[[GitHub]] -Webサービス
-[[GitLab]]
-[[GitBucket]]
-[[BitBucket]]
**Gitクライアント [#p64d8f65]
-[[Sourcetree]] -[[Atlassian]]
-TortoiseGit
-Git Bash
*Gitを使った開発モデル [#ab1ac74f]
-Git Flow
-GitHub Flow
--フォークを使わないフロー
--masterブランチはデプロイできる状態を保つ
--masterブランチからタスクの内容がわかる名前のブランチを作り、そこで開発を行う
--コミットの単位をレビュアーが分かりやすい単位で行ってPullRequestする。
---タスクの目的の修正と既存のコードの改善や整形はコミットを分ける。
*Gitコマンド [#j71fc583]
-「[[Gitコマンド]]」参照
*Gitの使い方(ポイント) [#ocdd41a1]
**コミットメッセージ [#m59212a9]
-一般的に以下のルールで書くこと
--1行目:表題(変更の要約)
--2行目:空行
--3行目以降:変更内容・変更の理由
*Gitの用語 [#e91e75f5]
-issue
-fork
-upstream
-HEAD
--現在のブランチの先頭(最新状態)
-ワークツリー
--編集するファイルを格納するディレクトリ
-Index
--リポジトリに格納(コミット)する準備としてワークツリーで変更のあったファイルを登録する一時領域。(addコマンドで登録する)
--当領域に登録したファイルがコミットの対象になる。(当領域に格納しないとコミット対象にすることができない)
-リポジトリ
--ローカルリポジトリ
--リモートリポジトリ
*gitignore [#p1535ccc]
-gitignore - git-scm.com~
https://git-scm.com/docs/gitignore
-git/git/Documentation/gitignore.txt~
https://github.com/git/git/blob/master/Documentation/gitignore.txt
-github/gitignore~
https://github.com/github/gitignore
*関連サイト [#kad5dcfe]
-Git - Book~
https://git-scm.com/book/ja/v2
-Gitの仕組み~
https://koseki.hatenablog.com/entry/2014/04/22/inside-git-1
-Git for Windows~
https://git-scm.com/
-WindowsにGitをインストールする方法~
http://proengineer.internous.co.jp/content/columnfeature/6893
-いまさらGit for Windowsのインストール、GitHubに接続してみた~
https://qiita.com/manabu-watanabe/items/ecf1b434baf305adaa00
-Git-flow
--A successful Git branching model~
https://nvie.com/posts/a-successful-git-branching-model/
--git-flow cheatsheet~
https://danielkummer.github.io/git-flow-cheatsheet/index.ja_JP.html
*関連用語 [#b4ee83a5]
-[[Bazaar]]
-[[Mercurial]]
-[[Markdown]]
-[[チェックサム]]
--SHA-1
---40文字
-[[スナップショット]]
-[[ワーキングコピー]]
--ローカル環境の.git 内に格納されるメタデータとファイル