こんにちわ、Adachinです。

そういえばgitさんの使い方をブログしていないなと思い、

それにGitLabもハマったのでブログしていきます。

このブログを読んで、

「クローンからプルしてマージ、コミットしてプッシュする」の意味

が分かるようになって頂ければ幸いでございます。

僕も初めはgitの操作もふぁっ!?ってなりましたがねw

早速概念からいきませう。

git


 ■共有リポジトリとは

まずは運用するときに共有リポジトリを理解しないとダメなので。。

これは複数人でリポジトリを共有して開発を行うときに、

開発者全員が参照し、開発の元になるリポジトリのこと。

は!?と思いますが簡単に言うと、

ファイルの倉庫です。イメージはこんな感じ。じゃあGitって?

ripo


■Gitとは

バージョン管理システムのこと。

そもそもバージョン管理システムってなんなのよ・・・(・∀・汗)

サービスができるまでプログラムは一度開発して終了〜乙でした!!

んなわけがありませんよね。

改善されたり機能の追加などたくさんの更新があるわけです。

で、うっかりバグが出ちゃった場合、バージョン管理があれば前のプログラムに戻せるのです。

簡単に言うと

「プログラムの修正や追加など、更新するたびに、ソースコードの状態を日時やコメントと一緒に記録する」

と言った感じです。複数人いる会社は非常に役に立つのかと。

git2

 


■Git用語について

・commit(保存)

Git管理しているプログラムの更新を確定、記録させること。

 

・clone(コピー)

リポジトリを複製すること。

リポジトリの中身を、丸っと手元に持っていく。Githubに置いてあるのもOK。

 

・branch(オブジェクトの集まり)

Gitでの履歴を分岐させて記録していくためのオブジェクト群。

同じリポジトリ内で、複数の変更を同時に進めていくことができる。

 

・checkout(切り替え)

作業するbranchを、今作業中のものから別branchに切り替える時に利用。

移動先のbranch内の最後のcommitの内容が作業場所に展開される。

 

・push(反映)

ローカルにあるリポジトリの中身を、

別のリポジトリに送り、そのリポジトリ上に反映させること。

自分が開発したものを、push先のリポジトリを通じて共有させる。

 

・pull(取り込み)

リモートリポジトリの更新部分を自分のリポジトリに取り込み、

さらに現在checkoutしているbranchに対してマージ(融合)すること。

他のリポジトリの中身を,ローカルのリポジトリに持っていける。

git3


 

■Gitlabとは

gitlab

Gitlabとはなんなのか。狐なのか猫なのか分かりませんが、

GitHubありますね!?

github

プログラムをネットで共有して使ったりコメントしてもらったりなど。

それのローカル版オープンソースです。社内のみでプログラム共有しようじゃないかというイメージ。

GitHubも似たようなdeveloper版とかあるみたいで使ってる会社も多いはず。

 


■GitLabを使ってgitコマンドを駆使する

とりあえずユーザ作ったらSSHKey(公開鍵を登録する)

今回はMac(ローカル内)でやります。

gitコマンドはbrew install gitで。

Homebrewのダウンロード方法はこちら

 

1.鍵の作り方/.sshのconfig追加

パスフレーズとかいらない。エンター押しまくる。

でけた。

configファイルの設定は鍵を名前指定して作っていなければ設定しなくてもOKです。

今回はgitlabという名前なので、

※Host名は必ずドメイン名と同じにしましょう。pushができないので。

 

2.gitlab.pub(公開鍵)を貼り付け

プロフィールにSSHKeyという項目があるので貼り付けします。

sshgit

 

3.新規にプロジェクトを作成

newprp

作成するとMacでこんなのをやれと言われるので、上から順にコマンド実行しましょう。

gitlabmac

とりあえず今回はREADME.mdをpushしました。

これでプロジェクトにファイルが追加されているかと思います。


 ■そのほかのGitコマンド(少し紹介)

・gitの状況確認、エラーとかも表示される

・ローカルに追加した使わなくなったファイルを一括消去

・よく使うgitコマンド(masterにpushするまで)


gitは使ってると奥深くてむずい。。

こんな感じです。今回は基礎的な部分を紹介したので、

次回はよく使うgitコマンドをブログしたいと思います。

 

参考資料:http://tracpath.com/bootcamp/learning_git_firststep.html
http://gihyo.jp/dev/serial/01/hackgirlsgit/0002

The following two tabs change content below.
あだちん

あだちん

1989年生まれ。 Infra Engineer/SRE In Shibuya 2013年新卒に自宅サーバを構築し、この技術ブログを立ち上げたが、 2017年に電源が壊れConoHaにリプレイスした。 好きな構成管理ツールはansible,Terraform。 インフラならAWS/docker。言語はPython。 WEBサーバならH2O。そして脆弱性スキャナVuls追いながらVulsRepo init fileのコミッターでもある。 HIPHOPが好きすぎてTrack Makerでもある。

コメントを残す