LoginSignup
127
137

More than 5 years have passed since last update.

とりあえずのGitメモ

Last updated at Posted at 2015-04-22

作業用にメモ。

Gitコマンド

git pushしたモノを取り消したい時

Terminalコマンド
cd / ..... で対象のディレクトリまで入る
git status でまず状況確認
git log ログが確認できる。ここで確認できるlog番号を色々使う
git revert コミット番号 revertする
git commit -m'コメント' revertをcommitする
git push (必要あれば )
git pull
git log きちんと取り消されたか確認
git commit —amend 直前のcommitメモを修正

git revert commit番号でcommit番号のgit commitを取り消します。
あとはgit add --all して git pull + git pushでrevertをpushして完了。

git checkout commit番号 ファイル名 でファイルを復元。コミット番号を入れない場合は自分が作業する前の最新の状態で復元。

commit の コメントから出るときはCtrl + C

esc + :wqでvimから出る

何はなくともgit pullから

git pull -> git add --all -> git commit -m'コメント' -> git push


差分チェック

git diff コミット番号A コミット番号B

terminalには赤がA 緑がBで表示される

変更箇所が確認できる


コンフリクトした時

git pullしたらコンフリクトしたからマージしてと言われた

error: Your local changes to the following files would be overwritten by merge:
    ディレクトリ名/ファイル名
Please, commit your changes or stash them before you can merge.

git pushしたい内容を一時的に作業場所から退避場所に退避
※git stashは一時退避エリアのこと

git stash save -u

git statusでちゃんと退避したかチェック

下記で退避場所に一時保存したファイルのリストが確認できる

git stash list

問題なければgit pull

pullした後に、一時退避させておいた中で、最新のモノを作業場所に戻す

git stash pop

これを行うとオートマージしてくれるかコンフリクトするか。
ここでコンフリクトしたらあとはhead>>>の目検確認。

今回はオートマージしたよと出たのでOK

Auto-merging ディレクトリ名/ファイル名

「Dropped refs~」が出たら、一時的によかしといたやつが無事に
マージできたので、一時退避のやつ消したよーとの意味
= 無事にマージ完了

Dropped refs/stash@{0} (.......)

※参考URL
transitive.info
http://transitive.info/article/git/command/stash/

無地にマージ完了したら、git statusで確認
問題なければadd → commit → push

git drop
stashを消したい時

Terminalでのdiffの見方

git diff --cached -w
「-」が更新前、「+」が更新後


git addを取り消したい時

git reset head
indexをheadに合わせる

参考にしたURL
http://d.hatena.ne.jp/murank/20110327/1301224770
http://labs.timedia.co.jp/2011/02/git-various-undo.html


git ignoreしたい時

■ git 管理していないファイルを無視したい
.gitignore ファイルに追加
■既に git 管理しているファイルをあえて無視したい
無視する・・・
git update-index --assume-unchanged [ファイル名]
git update-index --skip-worktree [ファイル名]
もとに戻す・・・
git update-index --no-assume-u!nchanged [ファイル名]
git update-index --no-skip-worktree [ファイル名]
確認・・・
git ls-files -v

使用するのは--skip~のもの。対象のファイルをスキップしますよ、の意味。
元に戻したい時は--no-skipを使用する。


[Git]
場所のことをリポジトリ

大元をforkしていく

testサーバ上にあるローカルリポジトリ

自分のPCをローカルマシン
ローカルリポジトリ
リモートリポジトリを管理できるwebサービスがgit hub

gitで特定のファイルだけ前の状態に戻したいときのコマンド
http://konbu13.hatenablog.com/entry/2014/12/01/070255

git l    gitをツリー構造で確認できる

※git log はpushしなくても、git commitしたら表示される。
git logにのってるけど反映されていない時はまずgit pushしてみる

Git Hub

クローンの方法

参考URL
http://qiita.com/masamitsu-konya/items/abb572337156e4d003cf

2018年11月追記

Git:ファイルの差分抽出&zipで圧縮

差分を正確にとってくれる+不要ファイル除外+ハッシュで好きな箇所からとれる。
SourceTree用ではなく、node.jsのmodle。
bashから実行コマンド、差分+除外ファイルリスト一覧がtable表示で確認できる。
今のところ、これが唯一正確。ありがたいです。
https://blog.wadackel.me/2016/git-diff-archive/

127
137
1

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
127
137