カテゴリー
git

‘git status’ failed with code 128:’fatal: multiple stage entries for merged file ‘htdocs/****/********’

コミットしようとindexにステージしようとした途端、エラーを吐くようになった
あれれー?おじさんおかしいよ〜〜〜?
iMacがアレなのかと再起動してもアカんかったのでググりメモ。

「’git status’がコード128で終了しました」というエラーが出たときの対処方法 – Right Now

ということで、index中にエラーが出たので、indexにあげてた情報のリセットをせよ、とのこと。
SourceTreeではgitのプロジェクト詳細画面(?)からメニューで、
[操作]→[ターミナルで開く]
で移動すると、該当プロジェクトのgitにアクセスできるのでそこから
上記URLで書いてある通り

rm .git/index
git reset

でおっけ
なおったーん

カテゴリー
git

sourcetreeでgitがバグってハニー 年の瀬にコマンドラインを叩く

fatal: pathspec ” did not match any files

ファイルを色んな所からコピペしたら謎の作った覚えのないファイルがindexに居座るようになった。
気持ちわりいけどしゃーないからプッシュした。
で削除しようとしたら

fatal: pathspec ‘ほにゃらら’ did not match any files

はぁ。ねぇんだな。ファイルがな。だってそうだよ。無いファイルをお前があげようとしたんだろゴル(ry

というわけでおググりあそばした結果をメモ。

git rmコマンドでリポジトリに登録されていないファイルを削除しようとした場合のエラーを回避する | HAPPY*TRAP
http://www.happytrap.jp/blogs/2012/06/16/9021/

なるほどー
–ignore-unmatch っていうのつけてコマンド叩けばいいんですねー
(私 gui使ってるんだけどな〜)

git rm で fatal: pathspec did not match any filesが出るときの解決方法 – Qiita
http://qiita.com/pugiemonn/items/2f6af4467b33ed3f41b5

なるほどー
やっぱそうなんですねー
(私 gui使ってるんだけどな〜)
しゃ〜ね〜からためすか〜
ターミナルからアクセスはじめてしました。

gitをコマンドラインから使う場合(これだけは覚えておこう) – Qiita
http://qiita.com/TakamiChie/items/c68d51c3b0f6dbb8819d

やったことの流れ

ディレクトリに移動
$ cd /Users/[user name]/Documents/[git directory’s name]

ねんのためリモートをチェック
$ git pull

アクセスできたらいったん現状を別名でバックアップしておく
中身を全部消してみる
バルス(※自己責任!※自己責任!)
$ git rm -r –ignore-unmatch ./*

おお!霊圧が消えたぞ!
sourceTreeから変更をコミット→プッシュ

ファイルを元に戻す(バックアップの中身をgitディレクトリにコピペ)

sourceTreeから変更をコミット→プッシュ

以上。

結果

うまく謎ファイルは消えたようです。
念のためチェックしたら、復活させたファイルもファイル名が同じなので、前のコミットまで戻したりするのは問題ないようでした。
しかしコマンドラインでgit動かすのって以外に簡単なのね。。。食わず嫌いでした。

あーべっこりした!

カテゴリー
git

gitignoreの書き方

コマンド叩くのばっか記事があるのでメモメモ

Git 無視するファイルの指定方法(.gitignore) | 雪の天秤
http://yukiten.com/blog/info-tec/git-gitignore/

カテゴリー
git

git developブランチの内容をmasterブランチにマージする

別に書かなくてもいいっちゃいいんだけど、sourcetreeで右クリックからマージが選べるのしらんかったからメッモや。ありがたい話やでぇ。

あおたくノート — SourceTreeとGitではじめるバージョン管理 #2
http://blog.aotak.me/post/67731804938/sourcetree-tutorial-2

masterをチェックアウトしよう。そして、developを右クリックして、Mergeを選択して、マージだ。

なんかせりふがいちいちアーミーみたいでいいな//

カテゴリー
git

gitでのBRUNCHブランチの名前の変更

予測変換エ・・・BRUNCHって出てくるw英語でかっけーww
ローカルBRUNCHの名前は簡単に変えられますよっと
リモートのBRUNCHの場合はリネーム後の名前でコピー→リネーム前のBRUNCHを削除がひつようですよっと

参考サイト

ローカルとリモートのブランチ名を変更する | deadwood
http://www.d-wood.com/blog/2014/04/01_5945.html

gitのメモ – cakephperの日記(CakePHP, Laravel, PHP)
http://d.hatena.ne.jp/cakephper/20090925/1253878596

SourceTreeでのやりかた

ローカルブランチのリネーム

右クリック→Rename→リネームする

リモートブランチのリネーム

プッシュ→プッシュの対象としてリネーム後のローカルブランチを選択→同名のリモートブランチが作られる→リモートの旧名のブランチをDelate(しっかり確認してから!!!!)

ひぇ。まだコワイよう。

カテゴリー
git

ブランチの命名規則で迷うことが増えた

gitのブランチの名前の付け方 | Ninton G.K.
http://www.ninton.co.jp/?p=1287


中央リポジトリ(例 github)

・master 現在の製品バージョン。
・develop 次回リリースの開発用。

開発者リポジトリ

・feature-* 新規機能の開発用。developから分岐し、developへマージする。
・release-* 次回リリースの準備用。developから分岐し、developとmasterへマージする。
・hotfix-* 現在の製品バージョンのバグフィックス用。masterから分岐し、developとmasterへマージする。

最初から調べろって話ですね。
でも往々にして必要性って必要になってから分かるものでありまして。。。ブツブツ。

カテゴリー
git

マージ怖いよマージ(平和に終わったけど)

gitでやっとこ公開日時Aブランチと公開日時Bブランチをわけて実案件でつかって、とうとうそれをマージした。疲れた。メモ。

【連載Git入門 第4回】SourceTreeでGitを始めよう!マージの競合 | naichilab – Android iOSアプリ開発メモ
http://naichilab.blogspot.jp/2014/01/git-4sourcetreegit.html

マージのやり方は上記の通り。
最近「ブログ見つけたけどリンク先切れてました!」って言われたので自分でも書いておく。

1)差分を取り込みたいブランチをチェックアウト(差分がある方じゃなくて)
2)ログからマージ>>マージしたいブランチのコミットを選択(選択したコミットまでの履歴も含めマージされます。チェリーピックではなくマージなので。)

2−2)どこかファイルが競合した場合
自動マージされない
作業ツリーのファイル一覧に[!]マークのファイルがあるので競合を解決(参考ページ参照)
上の参考ページではHunk一覧で競合を確認してたけど、色付けが逆にわかりづらいのでSublimeTextなど普段使っているエディタで見るのがおすすめ。XcodeのfileMargeでもいいけどこっちもあんまりわかりやすくない気がした。
大体の場合は相手の内容で解決で問題ないけど中身はちゃんと精査する
2−3)競合が解決出来たらコミットしてマージする
3)完了

カテゴリー
git

コミットのコメントだけ修正したいとか

便利ね〜。
SourceTreeでいろいろ取り消してみる – yk5656 diary
http://d.hatena.ne.jp/yk5656/20140521/1402233587

カテゴリー
git

タイトルがよかったのでメモっとく(^q^)Git可愛いよGit

Gitの忘れがちだけど絶対に使うであろうコマンド達 – Git可愛いよGit
http://tech.basicinc.jp/Git/2013/06/15/git_command/

カテゴリー
git

チェリーピックが出来たよママン!→Git で特定のコミットだけをマージする

他のブランチの内容の中から「過去も未来も関係ない!ただこの瞬間の君だけがほしい!」っていうの、あるよね。
そんなコミットだけをピンポイントにマージするのが「チェリーピック」。

ひろこなは「チェリーピック」を おぼえた!
ひろこなの けいけんちが あがった!

Git で特定のコミットだけをマージする
http://www.devlog.alt-area.org/?p=472

SourceTreeではマージ反映させたいブランチに切り替えて、
他ブランチの該当コミットを右クリック→チェリーピックでおk
(mac、2016/1/16現在)

sourcetree1