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

%e3%80%90%e3%82%b3%e3%83%9e%e3%83%b3%e3%83%88%e3%82%99%e3%81%be%e3%81%a8%e3%82%81%e3%80%91%e5%88%86%e6%95%a3%e5%9e%8b%e3%83%8f%e3%82%99%e3%83%bc%e3%82%b7%e3%82%99%e3%83%a7%e3%83%b3%e7%ae%a1%e7%90%86

Gitが便利すぎてもうなくてはならないもの。

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

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

eXlL8

Git(ギット)とは、プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムです。
分散型と呼ばれるのは、ネットワーク環境が無くても構築作業ができる点にあります。

リモートサーバにあるメインのリポジトリをもとに、複数人がローカルにそのリポジトリを複製し作業することができます。
そのローカルでのファイルの変更内容をリモートサーバに反映させることで、共同作業が可能となります。

また、その変更内容はログとして残る形となり、競合した場合もGitでの解決またはGitより競合のアラートが通知されるため、複数人でのプロジェクトに最適なシステムとなります。

もちろん一人での構築にも便利な機能です。
僕は一人でも頻繁に使用しています。

Gitを使用した共有ウェブサービスとして、GitHubやBitBucketがあります。

Gitの基本コマンド

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

まずはよく使う基本コマンドの一覧です。

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

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

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

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

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

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

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

ローカルブランチの削除

リモートブランチの削除

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

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

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

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

使い方は簡単で、

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

また、

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

保存状態を一覧で見る場合には、

とします。

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

とします。

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

とすることもできます。

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

保存を削除するには、

などとしますが、

全てクリアする場合は、

が便利です。

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

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

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

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

ご使用・ご用法にはご注意を。

まとめ

GithubもBitbucketも便利で一度使っちゃうと離れられなくなります。
日頃から一番使っているサービスですね。

ちなみにGitHubとBitBucketの違いは、非公開が有料か無料かの違いくらいしかわかりません(調べたけど忘れた)が、非公開が有料であろうとGitHubになれちゃっているので、僕はGithub派です。

バージョン管理を使い始めたら、使っていない環境では怖くて構築できないですよね。

筆者について

筆者について


1982年、東京下町生まれ。
高校卒業後、アメリカへ留学。その後、「アートが根付いた国では絵だけで食えるのか」を確認するため、ドイツベルリンにてアート活動をおこなう。

日本に戻ってからは、コーディング・オーサリング・プログラミングなんかを経て、ウェブディレクターを肩書きにしておりました。現在は独立し、ブログやサイトの運用を軸に、ウェブサイトの企画提案からデザイン・構築まで手広く活動しております。何でも屋です。

isLog〜イズログ〜では『日々生きること自体が旅』をモットーに、日々の旅を中心に綴っています。

詳しいプロフィールはこちら


feedly

コメントを残す

*