GitHub GitItで学んだものメモ
Git
オープンソースソフトウェア
変更を記録してくれる
バージョン管理システムとして知られる
ターミナルでいつでも使うことができる
Gitの設定
git --version
git config --global user.name "ほにゃらら"
git config --global user.email "メールアドレス"
Repositories
プロジェクトのこと
自分のプロジェクトをGitに伝えることで、そのフォルダの中のすべての変更を追跡してもらえる(バージョン管理システム)
以下例
mkdir フォルダ名
cd hello-world
git init
git status
ファイルの追加/保存/確認
git add ファイル名
git commit -m "コメント"
git diff
git add.
GitHubのアカウントを作り、Gitにユーザー名を追加
git config --global user.username ユーザ名
・GitHubに作成した名前と全く同じ名前
・大文字小文字は区別されるので注意
REMOTE
GitHubに何かをおくとそれはGitHubのサーバー上に存在していることになる(リモートリポジトリ)
自分のローカル(コンピュータのこと)の変更をpushすることでプロジェクトを最新状態に保てる
リモートにある変更をpullしてそれぞれのコンピュータに取り込みプロジェクトを最新の状態にする
お互いのコンピュータにアクセスすることなくプロジェクトメンバー同士がコードや情報を共有できる
リモートリポジトリを作る
ローカルにあるバージョンをリモートのバージョンと同期するため、空っぽのリモートリポジトリをGitHubに作る
・new repository
・ローカルリポジトリと一致する名前をつけ、短い説明をつける
・publicを選択
・readmeはプロジェクトに関する説明、どう使うか、どう貢献するかを書くもの
・.gitignoreはGitに追跡しないでほしいものの一覧(パスワードファイルなど)
・licenseファイルはプロジェクトに対するライセンスを定義する
・create repository
ローカルとリモートをつなぐ
httpsボタンを選択し、 GitHubサーバ上におけるリポジトリのアドレスをコピーする
ターミナルでGitリポジトリとして初期化したフォルダの中から、GitHubサーバ上にあるリモートバージョンの場所をGitに知らせる(別の名前をつけ複数のリモートを設定することもできる。メインのリモートサーバに対しては通常originと名付ける)
git remote add origin コピーしたURL
作業内容をリモートにPushする
Gitのブランチという仕組みは、プロジェクトの別々の箇所に対して別々のタイミングで作業できるようにするためのもの
最初のブランチはデフォルトではmasterという名前である
git push origin master
fork
リポジトリをフォークするとそのリポジトリのコピーを自分のGitHubアカウントの下に作ることになり、それはremoteリポジトリの一つとして使える
あるプロジェクトの自分自身のバージョンを作るために使用したり、元のプロジェクトに対してバグ修正や機能追加を送り返してあげるために使用する
clone(コピー)
リポジトリのコピーを自分のコンピュータ上に持ってくることができる
クローンすると新しいフォルダが作られる
別のGitリポジトリのフォルダの中にリポジトリをクローンしないように注意する
git clone コピーしたURL
ブランチ
Gitリポジトリは必要に応じてブランチを使い、隔離された作業環境を作れる
プロジェクトで作業するとき、または他人と作業するとき、ブランチを作って変更を保存する
メインのブランチを安全に保ち作業できる
作業が終わり、準備が整ったら、ブランチをmasterにマージする
ブランチを作る
ブランチを作るとGitは今いるブランチのものをすべてコピーして、新しく作ったブランチに持ってきてくれる
git status
ブランチ名は大文字小文字区別あり
git branch ブランチにつける名前
git checkout ブランチの名前
ソーシャルコーディング
他の人と共同作業が簡単にできるところがGitHubのいいところのひとつ
コラボレーターというのはGitHubのユーザでかつ誰かのリポジトリにアクセスし、編集することが許された権限を持つ人たちのこと
プロジェクトにコラボレーターを追加するにはGitHubのリポジトリページに行き、Settingをクリックする
その後Collaboratorsタブを選択、追加したいユーザ名を入力しAddをクリックする
Pull
誰かと一緒に作業していて、ファイルを最新に保ちたいという状況になったとき、pullすることで変更を取り込める
git pull リモートの名前 ブランチの名前
git fetch --dry--run
なにも変更がなければ、Already up-to-date、何か変更があればGitがそれをローカルにマージしてくれる
Pull Request
フォークしたリポジトリに変更や改善を加えたら、それらの変更を元のリポジトリのメンテナーに対して変更を元のリポジトリにpullしてほしいというrequestを送る
ローカルでマージする
git merge ブランチの名前
git checkout ブランチの名前
git branch -d ブランチの名前
git push リモートの名前 --delete ブランチの名前
git pull リモートの名前 ブランチの名前
注意点
プロジェクト名が複数単語から作られる場合ハイフンをいれる
例 shopping-site