2013年6月4日火曜日

2週間でわかる?Git入門

B4に進級しましたNashioです.
気がついたらもう半年近く更新が止まってましたね.
私の前回記事はこれですね.

3年生の研究室見学もそろそろ始まるようなのでこの辺りでアピールのために更新して行きたいと思います.

記念すべき?第1回はタイトルどおりGit入門です.(もちろん2週間はかけません)

Gitとは

「プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムである(Wikipedia参照)」だそうです.

Gitでは,チームで開発をする際のファイル共有やバージョン管理をすることができます.
変更の差分を見たり,現行バージョンを保ったまま次期バージョンの開発を行うことができます.(それだけじゃないですけでね)

有名なGitのGUIとしてGitHubが挙げられます.田胡・柴田研究室では,プライベートなGitGUIとしてGitLabというGitHubライクなGUIパッケージを使用しています.
初めて使う場合はGitHubの登録をしてみるといいかもしれません.

それでは,ここからGit使い方入門編へ行きましょう.

Gitのインストール

まずはGitが使用出来る状態を作りましょう.

Mac

   Macを買いましょう.

Linux

   yumとかaptを使ってgitをインストールしましょう.

Windows

   cygwinを入れてGitをインストールしましょう.

もちろん方法はこれだけではありませんが,これでできるようになりました.

Gitの使い方

ユーザ情報の登録

まずは自分の情報を登録しましょう.
設定ファイルを直接いじる方法もあるのですが,ここではコマンドを使って登録してみましょう.
何らかのターミナルを開いて以下のコマンドを実行しましょう.
$ git config --global user.name [ユーザ名]
$ git config --global user.email [Eメールアドレス]
このコマンドを打つことで情報が登録されます.

基本コマンド

ローカルリポジトリのトップで以下のコマンドを実行します.
$ git clone 〜  //〜にあるリモートリポジトリからプロジェクトをクローン(ダウンロード?する)
$ git pull origin 〜  //リモートリポジトリの〜ブランチ(指定分岐先)の情報を取得
$ git add .  //ファイル・ディレクトリを新規追加
$ git rm 〜  //ファイルを削除(--cacheオブションをつけるとファイル自体は削除されない)
$ git commit -am 'コメント'  //変更の記録(コメントをつけて更新内容がわかるように)
$ git push origin 〜  //リモートリポジトリの〜ブランチに変更をアップロード
$ git status  //現在の状態を確認(コミットしているか,Pushしているかなど)
上記のコマンドを駆使することによって以下の図ような形でソースコード類を管理することができます.

実際にやってみた

では実際にどのようにコマンドを使うか見てみましょう.

まずはリモートリポジトリからクローンをします.
$ git clone git@git.com:test/test.git
これでtestディレクトリがクローンされてきたはずです.(実際に存在はしません)

次はクローンされてきたtestディレクトリに入り,新しいファイルを作りましょう.
$ cd test
$ touch README
これでREADMEというファイルが作成されました.

このままでは,READMEがGitに登録されていないのでaddをしましょう.
$ git add .
これでディレクトリ以下のファイルがGitに登録されました.
addコマンドはファイルを新規で追加した時のみやればOKです.

ローカルリポジトリを変更したので変更の記録しましょう.
$ git commit -am 'add README'
これで変更を記録することが出来ました.コミットメッセージは変更内容がわかるように記述しましょう.

最後にリモートブランチに変更をアップロードしましょう.
$ git push origin master
これでmasterブランチ(メインとなるブランチ)にPushされました.

また,他の人が行った変更を取得する際は,
$ git pull origin master
これでmasterブランチの変更を取得することができます.

終わりに

今回はGit入門ということで基本的な使い方を簡単に紹介しました.
しかしながら,Gitの機能はこんなものではなくもっと多くのコマンドが存在します.
それぞれ便利なものなので,今後中級編,Tips集などで誰かが書いてくれるかもしれないですね.

10 件のコメント:

  1. Mohon ijin berpromosi. service Ac segala jenis merk. kami service Ac mencakup wilayah coverage seluruh Surabaya, Gresik, Sidoarjo. kami juga menerima jasa service perbaikan AC bongkar dan pasang AC. pekerjaan kami cepat, tepat, profesional, harga kompetitif di banding harga jasa luaran.
    service ac split sidoarjo
    tukang service ac sidoarjo
    service ac surabaya sidoarjo
    service ac surabaya selatan
    service ac surabaya timur
    service ac surabaya barat
    service ac surabaya utara
    service ac kota surabaya

    SPLIT-TYPE AIR CONDITIONERS
    MULTI-SPLIT AIR CONDITIONERS
    CHILLED WATER FAN COIL UNITS
    VRF AIR CONDITIONERS
    CHILLERS
    WINDOW-TYPE AIR CONDITIONERS

    http://jualjasaacsurabaya.blogspot.com
    Segera hubungi kami, dan kami akan datang kerumah Anda 24 Jam Non Stop.
    (Hari Sabtu / Minggu / Hari Libur buka)
    PIN BBM : 54BE0B4B / 5474CD93 / TELP : 085645475574

    返信削除
  2. Nice information. Do you know Innovative Finance ISA is giving lending service which gives good interest rate without paying any tax.

    返信削除
  3. Informational Blog. Everyone is now a days looking for something informative and they are looking for such blogs. You have made it easier for them. Just keep on working like this. Also, I am here to let you know about business voip that is providing quality features of internet telephony. Visit the site and know more about it.

    返信削除
  4. Assignment help from GoAssignmentHelp is surely a thing you don't want to miss out on. AssignmentHelp offers you college essay writing service the in Australia. GoAssignmentHelp has a team of highly experienced writers nursing assignment help they have already set a benchmark with their work all around the world. Our team consists of many Ph.D. assignment experts assignment writing service who will help you with expert assistance in every way possible.

    返信削除
  5. Accounting assignment help allows you to connect with experts and get effective assistance for your project submission. Don’t forget to check out all the features before buying the services of online assignment help for your accounting papers.

    返信削除
  6. Express Airport taxi service is an easy-to-use portal for booking one-way cabs and Facilitates booking of car rental in Croydon.
    https://www.expresscouriercars.co.uk

    返信削除
  7. Your article is very informative and helpful to me. Thank you for the post it’s really nice.this is more good! do visit my site here. 야설

    返信削除
  8. Hello there! Nice article!!! But anyways here’s one of the trusted online baccarat site we can offer you so many promo and event everyday!! Good luck!!! 일본야동

    返信削除
  9. Nice post. I learn something new and challenging on blogs I stumbleupon on a daily basis. 국산야동

    返信削除
  10. Nice post. I learn something new and challenging on blogs I stumbleupon on a daily basis. 한국야동

    返信削除