LoginSignup
1
1

More than 3 years have passed since last update.

GitとGitHubの基本

Posted at

Gitって何が便利なのか

Gitとはバージョン管理システムのことである。
最新のファイルが分からなくなるのを防ぐ
誰が、いつ、何のために変更したのかを残せる

Gitの仕組み

変更履歴を時系列順にメッセージを残して記録できる
誰が、いつ、何のために変更したのかを遡れる

開発の流れ

1.ファイルの変更をする
2.個人リポジトリに変更履歴を記録(commit)
3.共有リポジトリに変更を共有(push)

複数人での開発の流れ

1.情報を取得する(pull)
2.開発の流れ(変更→commit→push)

GitHubとは

Gitリポジトリのホスティングサービス(コードを預ける場所を提供)
ソーシャルコーディングの場でもあり、オープンソースの開発がしやすくなった経緯がある

GitHubの特徴

プルリクエストによる複数人開発がしやすい(コードレビューがしやすい)。他のチームのソフトウェアが見える事。

プルリクエストとは

変更を上げる際にリクエストを送り、取り込みの可否を依頼、修正改善の確認をするもの

Gitリポジトリのホスティングサービス

Bitbucket(個人開発向き)
    非公開リポジトリも無料作成
    公開不可のプロジェクト向き
    人数制限あり、2〜3人までなら無料
GitHub
    非公開リポジトリは有料
    公開リポジトリは無料

Gitのバージョン確認

$ git version

初期設定

$ git config --global user.name "GitHubのユーザー名"
$ git config --gloabal user.email GitHub登録時のメールアドレス

GitHubにリモートリポジトリを作成

$ git remote add origin https://github.com/~.git(リモートリポジトリのURL)

ローカルリポジトリの新規作成

$ git init

.gitディレクトリが作成。ここでバージョン管理を行う

基本的なワークフロー

1.ファイルの変更をステージングエリアへ追加
    $ git add ファイル名 #個別ファイルの追加
    $ git add .        #全てのファイルを追加

2.ローカルリポジトリにコミット
    $ git commit        #一つの作業に1コミット推奨

3.リモートリポジトリにプッシュ
    $ git push -u origin master

    origin リモートリポジトリのデフォルト名
    master ローカルリポジトリのデフォルトのブランチ名

ステージングエリアとは

複数ファイルを変更した時にコミットするファイルを選択するためのもの

コミットメッセージの書き方

1行目: 変更内容の要約
2行目: 空行
3行目: 変更した理由

リポジトリの状態を確認

$ git status

    赤字: 変更されたファイル
    緑字: ステージングエリアにあるファイル

変更差分の表示

$Git Commit -v

コミットの履歴を確認

$ git log

削除したファイルをステージングエリアに追加

$ git rm ファイル名

コミットの変更履歴を確認

$ git log --oneline    #1行で表示する
$ git log -p ファイル名 #ファイルの差分を表示する
4 git log -n 3      #表示するログ数を指定

commit ハッシュ値
Author  書いた人の名前とメールアドレス
Date 変更した日付
ここにコミットメッセージが表示

変更差分を確認

$ git diff    #ステージとの差分
$ git diff HEAD #ステージとコミットの差分

differenceの略

バージョン管理をしたくないファイルをGitの管理から外す

.gitignoreファイルに指定する
    自動生成されるファイル
    パスワードが記載されているファイルなど

.gitignoreファイルの書き方
    #から始まる行はコメントとみなされるため無視される
    指定したファイルを除外  index.html
    ルートディレクトリを指定 /root.html
    ディレクトリ以下を除外 dir/

既にコミットしている場合
    $ git rm ファイル名    #ファイルも一緒に削除
    $ git rm -r ディレクトリ名 #ディレクトリも一緒に削除
    $ git rm --cached ファイル名 #ファイルは残す(gitの管理だけ外す)

元の状態に戻す
    $ git reset HEAD ファイル名
    $ git checkout ファイル名

参考元
Git: 初めてのGitとGitHub/山浦清透

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1