フリーランスウェブエンジニアがウェブ全般について綴るブログ|いしかわろぐ
PRPR

【コマンドまとめ】分散型バージョン管理システムGit

【コマンドまとめ】分散型バージョン管理システムGitウェブ制作・運用
ウェブ制作・運用
本ページはプロモーションが含まれています

Gitが便利すぎてもうなくてはならないもの。
本日は仕事でも毎日利用している、バージョン管理システム、gitのコマンドについてまとめます。

GitHubやBitBucketを中心に 複数人の共同制作にはGitを導入

【コマンドまとめ】分散型バージョン管理システムGit
Git(ギット)とは、プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムです。
分散型と呼ばれるのは、ネットワーク環境が無くても構築作業ができる点にあります。
リモートサーバにあるメインのリポジトリをもとに、複数人がローカルにそのリポジトリを複製し作業することができます。
そのローカルでのファイルの変更内容をリモートサーバに反映させることで、共同作業が可能となります。
また、その変更内容はログとして残る形となり、競合した場合もGitでの解決またはGitより競合のアラートが通知されるため、複数人でのプロジェクトに最適なシステムとなります。
もちろん一人での構築にも便利な機能です。
僕は一人でも頻繁に使用しています。
Gitを使用した共有ウェブサービスとして、GitHubやBitBucketがあります。

Gitの基本コマンド

Gitの使い方は色々なところで書かれているので、ここではコマンドを中心に書かせてもらいます。
まずはよく使う基本コマンドの一覧です。

git init リポジトリの作成
git clone 既存のリポジトリの複製を作成
git status 変更が加えられたファイルなどの状態を表示する
git diffファイルの差分を表示する(git diff ブランチ名 ブランチ名 でbranch間の差分も表示できる)
git addcommitするファイルを指定
git commitコミットする
git logコミットログを表示
git branchブランチ情報の表示(git branch ブランチ名 でbranchの作成)
git checkoutブランチの切り替え
git mergeブランチのマージ
git tagコミットにタグを付与
git pullリポジトリの変更点をローカルリポジトリにマージ
git pushリモートリポジトリにローカルリポジトリの内容をアップロード

結構使うのが諸々削除コマンド

色々作業をしていると、必要になってくるのが削除コマンドです。
結構忘れがちなのでメモしておきます。

直前のコミットを取り消す

git reset --soft HEAD

gitでファイルの変更をすべて取り消し前回コミットした時の状態に戻す

git reset --hard HEAD

特定のコミットを取り消す

git revert コミットID

自分の環境だけで除外したいファイルの設定

.git/info/excludeにファイルpathを記入する

ローカルブランチの削除

git branch -d ブランチ名

リモートブランチの削除

git push origin :ブランチ名

既に削除したリモートブランチを一覧から削除する

git remote prune origin

共同作業の場合に特に便利なコマンドstash

複数人で共同作業をしているときに便利なコマンドとしてstashがあります。
ここではstashコマンド内容について説明します。

git stash

現在のワークツリーを一時的に保存するコマンドです。
コミットするまででもないローカルリポジトリでの変更点を保存しておけます。
例えば、共同作業中に共同作成者に「ちょっと俺の書いたとこ確認して」と言われた時に、ちょっと手を動かしていた自分の変更を保存して共同作成者の分をpullして確認する、といったことができます。
使い方は簡単で、

git stash save

とコマンドするだけです。
これだけで、変更内容は保存されて一時的に直近のコミット状態に戻ります。
また、

git stash save “ここにメッセージを入力”

とするとその保存にメッセージがつけられます。
これをしておくと、複数stashした場合に困らなくなります。
保存状態を一覧で見る場合には、

git stash list

とします。
一番最後に保存した状態に戻すには

git stash pop

とします。
また、複数保存している場合は、特定の stash を指定して

git stash pop stash@{1}

とすることもできます。
注意点は、popをすると保存されている状態からは削除されます。
保存状態から削除したくない場合は、popではなくapplyを使用します。
保存を削除するには、

git stash drop stash@{1}

などとしますが、
全てクリアする場合は、

git stash clear

が便利です。
また、stashでの保存状態とその親コミットとの差を表示することもできます。

git stash show stash@{1}

さらにstashで保存した状態をそのままブランチとして作成することも可能です。

git stash branch ブランチ名

とすると最新の保存からブランチを作成します。
保存を指定するにはブランチ名の後に記述します。

git stash branch ブランチ名 stash@{1}

複数人で作業をする際には結構使っています。
そして使いすぎてたまに混乱しています。
ご使用・ご用法にはご注意を。

まとめ

GithubもBitbucketも便利で一度使っちゃうと離れられなくなります。
日頃から一番使っているサービスですね。
ちなみにGitHubとBitBucketの違いは、非公開が有料か無料かの違いくらいしかわかりません(調べたけど忘れた)が、非公開が有料であろうとGitHubになれちゃっているので、僕はGithub派です。
バージョン管理を使い始めたら、使っていない環境では怖くて構築できないですよね。

 

オススメ
アイテム

【コマンドまとめ】分散型バージョン管理システムGit
Web制作者のためのGitHubの教科書 チームの効率を最大化する共同開発ツール Web制作者のための教科書シリーズ

コメント

タイトルとURLをコピーしました