概要
未経験からWebエンジニアに転職して早くもぶつかったのがチーム開発でのGit/GitHubの使い方。
改めて、あやふやになっていた各用語をまとめてみる。
基本
git init
initつまり初期化。
このコマンドを実行したディレクトリをgitによる管理対象とする
正確にはリポジトリを作成する
git add
対象のファイルをステージングエリアへ格納する
この段階ではまだファイルは管理されていない。
git commit
対象のファイルをローカル(自分のPC)のリポジトリに
コミットする。これにより1つの作業単位として保存され、
後に〇〇の作業前まで戻したいといった時などに活用することができる。
git push
ネットワーク上のリポジトリ(リモートリポジトリへ)
ローカルリポジトリの内容を反映させる。
これを行うことで、初めて自分の作業内容を他人と共有することができる。
git pull
リモートリポジトリからローカルリポジトリへ
内容を反映させるgit pushの逆バージョン
これを行うことで他人の編集したファイルなどを取り込むことができる
git clone
ネットワーク上に公開されているリモートリポジトリを自分のマシンへ
クローンする
git branch
ブランチを作成したり削除したりする。
ブランチとは一つの作業区画で、
別々のブランチで行った作業は互いに影響しない。
使い方はチームによって様々だが
例えばデフォルトのブランチはmasterブランチで
機能追加する(masterブランチへ影響を与えたくない)時にdevelopブランチとしてmasterブランチから切り離すなど
といった使い方。
git merge
他のブランチやコミットを現在のブランチに上書きする。
git checkout
他のブランチへ変更する。
git remote
リモートリポジトリのリンクを設定する
その他
Railsチュートリアルでポートフォリオを作成するために学習した身としてつまづいたわかりづらい単語
origin
これ混乱する。
originとはリモートリポジトリのリンクの別名みたいなものでGitがデフォルトでoriginとしている
Railsチュートリアルでは
git remote add origin https://github.com/hogehogerails.git
みたいな感じで設定していたと思う。
この上のコマンドの意味は
リンクhttps://github.com/hogehogerails.git(リモートリポジトリ Githubなど)を「origin」として関連づけるということ
つまり origin = リモートリポジトリという考えでだいたい間違いない。
このことから
origin/master はリモートリポジトリのmasterブランチのこと
git push origin master
はorigin(リモートリポジトリ)のmasterブランチにプッシュするということ
HEAD
HEADは今いるリポジトリの最新の変更点を表す。
記事はこれが詳しすぎたので載せておきます。
最後に
GitはRailsチュートリアルで使っているようにコンソール上(黒画面)で叩くよりも
GUIツールを使った方が100倍使いやすいです。
実際私も実務でSourceTreeというGUIツールを使っています。
いまだにGitの理解していない部分は多いですが、
こんな機能があるよ!、ここはこうだよ!というご意見、御助言がありましたら教えていただければ幸いです。