環境:Mac OS X El Capitan ver10.11.5
Backlogを使ったGit管理です。SourceTreeを使わずに最低限の動作の流れを確認します。
今回ブランチは作っていません。
1. PCのGit状態管理
事前準備
・brewをアップデートしてGitをインストールする
ターミナルを起動する
brew update
brew install git
Gitのバージョン確認
git -version
・必要に応じてFinderの隠しディレクトリを表示させる
defaults write com.apple.finder AppleShowAllFiles TRUE
設定を反映するために「Finder」を終了する
killall Finder
または隠しディレクトリのみ表示するコマンドを実行する
ls -d .*
・Gitの初期設定
初めてgitを使う場合は設定を記述する
git config --global user.name "Majestic Aster"
git config --global user.email "majestic.aster@sample.jp"
2. ローカルリポジトリの作成
a)ローカルに新しいリポジトリを作成する
プロジェクトのディレクトリまで移動する
cd プロジェクトのディレクトリ
リポジトリの作成
git init
(隠しディレクトリとして.gitで作成される)
b)ステージングエリアへ対象ファイルを追加する
git add ファイル名
若しくは
git add .
ステージングエリアに全ファイルを追加する
git add -u
一つ前のと最新のステージを比較して、変更されたファイルをステージングエリアに追加する。削除されたファイルの情報は追加されるが、新しく作成されたファイルは追加されない。
git add -A
git add .
とgit add -u
を合わせたもの。新規作成、変更、削除したファイルを全て追加する。
- 作業ディレクトリ
ローカル環境でユーザーが実際に作業するファイルが格納されている領域です。”ワーキングディレクトリ”や”ワークツリー”などとも言われますが、ここでは”作業ディレクトリ”とします。
- ステージング・エリア
作業ディレクトリ上で変更されたファイルのうち、次回のコミット対象となっているファイルを記録しておく領域です。この領域は”index”と呼んだりもします。
3. commitする
コミットとは、現在のファイルの変更や修正などの更新作業の情報を記録すること。コミットIDを指定することで過去のデータを参照できる。
ステージとは、コミットの前にindexファイルへ登録する(ステージする)こと。ステージングエリアに追加されたファイルのみコミットされる。
・結果にコミットする
git commit -m "コミットメッセージ"
・直前のコミットメッセージを修正する場合
git commit --amend -m "修正コミットメッセージ"
・その他の操作
git reset 過去のコミットa
コミットを取り消す
※過去のコミットaから現在のコミットまでのコミットは取り消される
git status
リポジトリの状態を確認
git diff
差分を表示
git log
ログ(コミット履歴)を表示
4. リモートリポジトリの作成
リモートリポジトリの作成
git remote add <name> <url>
// ex
HTTP : git remote add name https://sample.backlog.jp/git/SAMPLE_GIT/sample(Backlog上のリポジトリ名).git
SSL : demo@demo.git.backlog.jp:/SAMPLE_GIT/sample(Backlog上のリポジトリ名).git
git remote set-url <name> <newurl>
リモートリポジトリのアドレスを変更
git remote rename <old> <new>
リモートリポジトリの名前を変更
git clone <url>
リモートリポジトリを複製
git remote
リモートリポジトリの一覧表示
5. リモートリポジトリからfetchする
フェッチ(fetch) = データを取得する
プル(pull) = データを取得して自動的にマージする(fetch + merge)
データをリモートリポジトリからフェッチ(取得)する
git fetch リモート名
ex: git fetch sample
6. リモートリポジトリへpushする
データをリモートリポジトリへpushする
git push リモート名 ブランチ名
ex: git push sample master
git push -u sample master
のように-u(--set-upstream-to)オプションをつけると次回からgit push
だけで自動的にsample masterにpushする。
オプションをつけてpushする前にgit push
とするとpush.default
の設定によって挙動が変わるので注意が必要とのこと。Git2.0でデフォルトが安全なsimpleに変わった。
参考
サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ
Gitではじめるバージョン管理 〜ローカルリポジトリでファイルを管理してみよう〜
Git の基本 - リモートでの作業
git push引数省略時のデフォルト動作設定
git add -A と git add . と git add -u の違い
git add 使い方