複数の人とプログラムなどの編集を行う場合、Gitのようなファイル変更履歴を管理するためのシステムが多用されます。
Google Code もGitに対応したのでコマンドの一覧を載せておきます。
スポンサードリンク
git fetch | すべてのリモートブランチをコピーする |
git branch -r | リモートブランチの一覧を表示する |
git checkout (ブランチ名) | ブランチの切り替え |
git clone (レポジトリ名>) | 既存のリポジトリの複製をローカルに作る |
git pull | ほかのリポジトリの変更点をローカルリポジトリにマージする |
git add | コミットするファイルを指定する |
git diff | ファイルに加えられた変更点をdiff形式で表示する |
git status | 変更が加えられたファイルを表示する |
git commit | 変更点をコミットする |
git commit --amend | 前のコミットをやめて、上書きコミット。直前のコミットログの修正に使える |
git push | 公開リポジトリに自分のリポジトリの内容を送信する |
git show-branch | ブランチの作成/変更/マージ履歴を表示 |
git rm --cached | git addと対をなすコマンド |
git remote | リモートリポジトリの一覧を表示 |
git remote show origin | 詳細を表示 |
git checkout (commit番号) | コミット番号のデータを取得する |
git reset --hard HEAD | コミット前に全部、弄る前に戻したいってとき |
git reset --hard HEAD^ | コミットしちゃった後で1つ前のコミットに戻す(使うべきじゃない) |
git reset --hard | ローカルの全てのファイルを最新に変更する |
git clean -fd | ローカルのuntrackedファイル、空ディレクトリを消す |
git mv | ファイルを移動・リネームする |
git branch -d (ブランチ名) | ローカルブランチを削除 |
git branch -D (ブランチ名) | ローカルブランチを強制的に削除 |
git show (commit番号) | コミットされた情報を取得する |
$ git log --pretty=oneline cfd4e77149fed627e8bc4e35c53414da55b06b63 ログの追加 e4475b4aa4b5e171ac3b532653d2a3c7bb195b0d Aの機能を追加 fec72a79413f5bcfd059695b4268f429df0497db Bの機能を追加 234bc1a2aca4a1eae32b218f23849e5dec8650ba コメントの削除 713260425bde9863ab0577e389be3639923fd10f コメントの追加 ....
$ git reset --hard HEAD ; git clean -fd
ファイルの修正後にビルド失敗したりして、手元のファイルの状態がよく分からない時に役に立ちます。
git reset --hard HEAD git clean -fd git pull --rebase -v
$ git pull
$ git show (commit番号)
$ git branch -r origin/Hoge/hage origin/Hoge/fuge → ブランチの一覧が表示される $ git fetch $ git checkout -b Hoge/hoge master // Hoge/hogeという作業用のブランチを切る $ git checkout master // "Merge the remote changes before pushing again." とエラーがでる場合 $ git pull $ git checkout Hoge/hoge $ git push origin Hoge/hoge $ git branch -r
$ git checkout master $ git pull --rebase -v // masterを最新に, +verbose $ git checkout Hoge/hoge $ git merge master $ git push origin Hoge/hoge:refs/heads/deploy
$ git add . $ git commit -m "コメントを記載する" --author="hoge (hoge@hoge.hoge)" $ git push
git checkout master git branch -D Hoge/hoge git checkout Hoge/hoge git pull
git rm --cached ファイル名
git rm -r --cached フォルダ名
上記のコマンドは実ファイルは削除されません。
git rm -f ファイル名
git status # On branch master # Changes to be committed: # (use "git reset HEAD..." to unstage) # # deleted: index.html
マージコミットのrevertをするときは(Bの機能の追加まで戻したい場合)
$ git log --pretty=oneline cfd4e77149fed627e8bc4e35c53414da55b06b63 ログの追加 e4475b4aa4b5e171ac3b532653d2a3c7bb195b0d Aの機能を追加 fec72a79413f5bcfd059695b4268f429df0497db Bの機能を追加 234bc1a2aca4a1eae32b218f23849e5dec8650ba コメントの削除 713260425bde9863ab0577e389be3639923fd10f コメントの追加 .... $ git revert fec72a79413f5bcfd059 $ git push
これは、間違えてコミットしたけどログは残したい場合に有効です。
スポンサードリンク
$ git log -p -2
これは各コミットの diff を表示します。また -2 は、直近の 2 エントリだけを出力します。
コードレビューのときに非常に便利で、他のメンバーが一連のコミットで何を行ったのかをざっと眺めるのに役立ちます。
$ git log -U1 --word-diff
こちらは、行単位ではなく単語単位でレビューするほうが容易な場合に役に立ちます。
$ git log --graph --all --decorate -p
git log --stat -Syairc --pickaxe-all
コミット中の他のファイルも全て表示したい場合には、--pickaxe-allオプションを指定します
git log --decorate --graph --branches --tags --remotes -p
不要になったブランチを削除します。
$ git branch -a * master hoge origin/master $ git branch -d hoge → これだとマージが完了していないと失敗 error: The branch 'hoge' is not fully merged. If you are sure you want to delete it, run 'git branch -D hoge'. $ git branch -D hoge
repoはAndroidのプロジェクト管理用に作られたgitの管理ツールです。
「-g」 オプションを指定すると,そのあとの sync から group 指定が有効になります。
オプション | 役割 |
---|---|
j | 並列で動かすジョブの数を指定 |
f | 失敗したとしても強制syncをする |
error: git-remote-https died of signal 13
などとエラーになる場合は、プロジェクトを個別にSyncします。
$ repo sync -f
次に、各プロジェクトごとにSyncしてみます
$ repo sync platform/packages/apps/MusicFX
repo forall -pc git log --since=1.day.ago -p
「repo forall -c 任意のコマンド」で、全git repositoryに対して指定のコマンドを実行できます。
例えば、全ての「git show」が見たい場合は次のようにタイプします。
repo forall -c git show-branch
repo start 適当な作業ブランチ名 .
git add ファイル名 git commit → ここでエディタが立ち上がるのでコメントを記載する
repo upload
スポンサードリンク