Git

gitの勉強会をしてきた #gitbattle

Git

4/20(土)にgitの勉強会をやってました。 イベントのページ Git天空闘技場 - connpass http://connpass.com/event/1958/ 資料 DVCSとGitの基礎 from sinsoku listy Git天空闘技場_ハンズオン from sinsoku listy 経緯とか 元々、Gitの内部構造を軸とした勉強…

Gitでブランチをロック(変更不可)する

Git

Git v1.8.2のDocumentationをgrepしてもそれっぽい記述はないので、正式な機能じゃないと思う。 gitの内部処理を悪用活用した方法なので、内部処理が変わると使えなくなるかも。 使用は自己責任で。 masterブランチのロック これで、masterブランチの変更(c…

Gitの歴史を最初から作り直す時に使うコマンド一覧

Git

「今までのログを最初から作り直したい!」って事が時々あるので、その時に使えそうなコマンドをメモっておく。 コマンド 新しい歴史を持つブランチを作成する $ git checkout --orphan new_branch indexにaddされた変更を全て取り消す $ git rm -r --cached…

msysgitでgit-flowとgit-flow-completionを使う方法

Git

msysgitでgit-flowを使おうとして、少しインストールにハマったので、メモ。 環境 Windows 7 64bit msysgit 1.8.0(Git-1.8.0-preview20121022.exe) 前提知識 見えないチカラ: A successful Git branching model を翻訳しました http://keijinsonyaban.blogsp…

git-svnでsvnリポジトリの変更を自動で取得する

久しぶりにsvnを触ったら、logの表示やupdateがあまりに遅い。 git-svnを使っても、やっぱりupdateは遅い。 という訳で 勝手にgit svn fetchするようにbat/shを書いてみた。 バッチファイル・スクリプト 標準出力で出してる文字は下記の意味にしてる。 - : …

縛りプレイで勉強するGitの基礎

Git

縛りプレイをすることで、Gitの基礎であるハッシュ(sha-1)を意識してみる。 縛りプレイ とは 1. SMプレイのうち亀甲縛りなど縄を使うプレイ(性行為)のこと。昭和から存在する言葉。 2. ゲームをプレイする際、本来ゲーム側からは設定されていない制限(…

Transifexで翻訳する時のやり方メモ

忘れそうなので、メモ。 web上でも編集できるけど、リソースがロックされるのでローカルで編集した方が楽。 参考ページなど Transifex - 多国語化プラットフォーム https://www.transifex.net/ Transifex Client v0.7 ― Transifex documentation http://help…

gitで現在の作業内容をクイックセーブする

Git

見えないチカラ: 【翻訳】Gitをボトムアップから理解する http://keijinsonyaban.blogspot.jp/2011/05/git.html最後の方にstashの話が書かれていた。 以下、引用。 これはあなたのディレクトリの内容の全て――ワーキングツリーと、index の状態の両方を含む――…

msysgit v1.7.10 のインストールと日本語入力の暫定対応

Git

先日、msysgit v1.7.10がリリースされたので、インストールしてみました。 インストール msysgit のページの Downloads から「Git-1.7.10-preview20120409.exe」をダウンロードする。 インストールは基本的にnext押すだけですが、PATH の設定と core.autocrl…

あまり知られていないGitのTips

Git

思い浮かんだGitのTipsを列挙してみました。 gitのコマンドをで補完する git-completion.bash を入れると、でコマンドの補完が効くようになります。 また、PS1の設定を行うと現在のブランチ名が常にbash上に表示されるようになります。 (Windowsの場合、msy…

gitの作業ディレクトリでの移動が捗るgit_cdを作りました

Git

11月19日にオラクルでSCMBootCamp in Tokyo 2というイベントがあり、そこでgitの講師してました。 周りの方のgitの質問に答えたり、コマンドの説明をしていたり。濃い話が聞けたり、普段触らない他DVCSの話も聞けて楽しかったです。 あと、花映塚はやっぱり…

git submodule を100倍便利にするpost-commit hook

Git

追記[2011/11/20] submodule のコミット書き換えは上手く動いていないので、該当箇所を取り消し線で削除 100倍は釣りです。 深夜にgit helpを読みながら構築した黒魔術の構築式がこちらです。 参考ページ Pro Git - Pro Git 6.6 Git のさまざまなツール サブ…

図で分かるgit-mergeの--ff, --no-ff, --squashの違い

Git

git-merge の--ff, --no-ff, --squashの違いをまとめてみた。 git helpから引用 まずは、git helpを読みましょう git merge --helpから引用(抜粋) NAME git-merge - Join two or more development histories together SYNOPSIS git merge [-n] [--stat] [-…

git-rebase を多用した開発の流れ

Git

git-rebase を使った開発の流れが固まってきたので、ブログで晒してみます。 window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); j…

bashにgitとmercurialのブランチ名を表示する

参考にしたページ bashでgitとmercurialを使いやすくする - YAMAGUCHI::weblog 環境 Ubuntu 11.04 変更箇所 .bashrc の「PS1=....」みたいな所を下記のような感じで変更する。 .bashrc # prompt command hg_branch() { hg branch 2> /dev/null | awk '{print…

図で分かるgit-rebase

Git

世間的に「Gitはコミットログを書き換えられてキモい」と言われ、肩身が狭いので git-rebase の説明を書いてみた。 git help から引用 まずは基本に忠実に、ヘルプを読みましょう。 git help rebase SYNOPSIS git rebase [-i | --interactive] [options] [--…

.gitconfig に最近追加したエイリアス

Git

2011/05/12のブログで.gitconfig を晒した後に増えたエイリアスを少し解説。 最新の.gitconfigはgithubのsinsoku/dotfilesに置いてある。 git ft ft = fetch -n --pruneタグは後述するfttで取得するため、-n(--no-tags)を設定している。 また、削除されたリ…

Gitでコンフリクトした時のための備忘録

Git

コンフリクトしたときに便利そうなので、備忘録を残しておく Gitのコマンド コンフリクトしているファイルの一覧を表示する。 $ git ls-files -u [<path>] ファイルの状態(コンフリクト含む)を表示する。 -s でshort-format で特定のディレクトリのファイル一覧を</path>…

.gitconfig と.gitignore について

Git

git のalias を設定し始めて、気づいたらaliasだらけになっていたので、 現在(2011/05/12)の自分の.gitconfig の設定を晒してみる。 参考にしたページ .gitconfigに設定してるaliasなどのまとめ - ゆろよろ日記 dotfiles ~/.gitconfig [user] name = sinsoku…

BPStudy#41で発表しました #bpstudy

Git

BPStudy#41 でGitのコミット書き換えの辺りを話しました。 プレゼン資料 git の歴史改変について https://dl.dropbox.com/u/3501492/bpstudy-41/presen.html S5の操作 S5 プレゼンで作ってあるので、操作はこんな感じ 操作 キー 次のスライド [Space bar], […

tmp コミットのための独自サブコマンド git-now

Git

追記[2011/09/26] git-now のurlをgistからgit-hubに変更しました。 追記[2011/10/17] ライセンスはGPLです 一時的なtmp コミットや、簡単なログメッセージのコミット(push 前にログメッセージを整えています)を作るとき、今まで↓みたいな事をしていました…

git add と git rebase のちょっと応用的な使い方(add -p, rebase -i)

Git

Git 可愛いよ、Git という訳で、最近Git の使い方を覚えてきたので、少しまとめておく。書いたのは、下記の2コマンドのオプションについてです。 git add -p git rebase -i 両方ともSVN では出来ないですので、SVN 使っている方はGit キモい 凄いと思うこと…

msysGitのインストール+日本語表示

Git

追記 v1.7.10のインストール -> msysgit v1.7.10 のインストールと日本語入力の暫定対応 自分の備忘録として残しておく。 msysGit msysgit - Project Hosting on Google Code 上のリンク先のDownloadからGit-1.6.5.1-preview20091022.exeをダウンロードする…