by shigemk2

当面は技術的なことしか書かない

Git

git cherry-pick in remote branch

Git

git cherry-pick in remote branch リモートブランチのコミットもcherry-pickできるの?できるよ。 git fetchしてればね。ってはなし。 # fetch just the one remote git fetch <remote> # or fetch from all remotes git fetch --all # make sure you're back on th</remote>…

git vs bzr

Git

git vs bzr の対応表。checkoutはsubversion的であるし、branchはgitっぽい なお、shallow clone的な使い方はcheckoutだけで使える。 http://doc.bazaar.canonical.com/migration/en/survival/bzr-for-git-users.html http://doc.bazaar.canonical.com/beta/…

git clone depth

Git

git clone depth shallow cloneともいうけど、 --depth n とすることでコミット数だけcloneする だいたい --depth 1 みたいな使い方をする --depth <depth> Create a shallow clone with a history truncated to the specified number of commits. Implies --single</depth>…

commentChar config.c

Git

commentCharの実装のところ極めていい加減な雑感 git/config.c at master · git/git · GitHub valueは文字の配列 valueが空(!チェック)だったらおなくなり auto_comment_line_charは0 or 1でなんかしている auto_comment_line_charはvalueが"auto"だったら1 …

commentChar

Git

git config --global core.commentChar コメントのデフォルトはシャープなのを別の文字に変更できる。ただし文字数制限は一文字。 https://git.kaarsemaker.net/git/commit/84c9dc2c5a2d34351a06554af32501d4f99990e9/

git commit cleanup whitespace

Git

git commit cleanup whitespace git config --global commit.cleanup whitespace コミットログのシャープ(#)を無視する。GitHubのプルリクエスト対策に有効。 https://git-scm.com/docs/git-commit

git commit

Git

prestoの開発ガイドラインになってた。 件名と本文は改行で分ける 件名の文は50文字以内に収める 件名は大文字から始める 件名をピリオドで終わらせない 直説法を使う 本文も各行は80文字以内に収める howではなくwhat/whyを書く https://chris.beams.io/pos…

show all tags in git log

Git

git log --no-walk --tags --pretty="%h %d %s" --decorate=full no-walk 対象となるコミットログしか表示しない(–no-walkだけだと直近のログしか出ない) tags 最後にタグが付けられたコミットログから表示する pretty 詳細表示 decorate=full refも表示する…

git commit amend now

Git

2.7.0から。 git commit --amend --date=now 今の時間にamendすることができる。 stackoverflow.com

git am

Git

git am パッチの適用。 git am diff.path これを応用して curl -s -L https://patch-diff.githubusercontent.com/raw/cask/cask/pull/392.patch | git am - みたいなこともできる http://blog.a-way-out.net/blog/2015/03/28/github-pull-request-merge/ htt…

git diff patch

git

git diff master topic_branch > diff.patch patch -p1 < diff.patch diffの取り方はなんでもいい。HEAD~1みたいな書き方でも可能。

誰がコミットしたかを確認する

Git

こんな感じ。git shortlog を使う。 ➜ kuroko2 git:(master) git shortlog -s -n | head -4 341 Eisuke Oishi 16 Kohei Suzuki 8 shigemk2 7 Naoto Takai Git - git-shortlog Documentation

bitbucketの最小プラン

Git

d.hatena.ne.jp 5人チームだと無料でいける bitbucket.org

gitbook-cli

Git

npm install -g gitbookからの、 gitbook serve で、ローカルからGitBookの見た目をブラウザで確認出来る。いちおう変更をwatchしてくれるけど、Emacsだと#のファイルが出来てコケる。 github.com

remote: fatal error in commit_refs

Git

remote: fatal error in commit_refs に遭遇した時どうしたらいいんだろう git gc ネットにつながっているか確認する git push origin master -rしてからgit push origin master いろいろあるけど、僕の場合もう一度pushしたら通ったので、いろいろなパター…

git statusの文字化け対策

Git

git config --global core.quotepath false ってやるといいんだけど、なんでこの設定にしないといけないんだっていうのが見つからなかったので。 The commands that output paths (e.g. ls-files, diff), when not given the -z option, will quote "unusual…

git send-email

Git

考えてみると、GitHubというツールは偉大であると同時に不自由でもあるため、パッチのメールを送る時のコマンド群を記す。 事前設定(Gmailの例 送信メールアドレスの設定を~/.gitconfigで) [sendemail] smtpencryption = tls smtpserver = smtp.gmail.com sm…

gitの今のbranchを取得する

Git

思い出してきた。 git rev-parse --abbrev-ref HEAD

Git push master fatal: You are not currently on a branch

Git

Git push master fatal: You are not currently on a branch エラーの文章いっぱいでてたけど、最後のコマンドを実行したらばうまく行きました。 fatal: You are not currently on a branch. To push the history leading to the current (detached HEAD) st…

git rebaseでNeeded a single revision

凡ミスの間違い探し。 $ git rebase -i head~2 fatal: Needed a single revision invalid upstream head~2 stackoverflow.com ただしくは、headではなくHEADだ。

git add upstream毎回やるの面倒だった

Git

#!/bin/bash git remote add upstream $1 これ。毎回git add upstreamするの面倒なので。 qiita.com

Gitで既に削除したファイルのコミットログを確認したい

Git

git log -p -- delete_test.txt man git-log には以下のように書いてあって、 Show only commits that are enough to explain how the files that match the specified paths came to be. See History Simplification below for details and other simplific…

Agent admitted failure to sign using the key.

Git

出涸らしみたいなネタですけども。 Error: Agent admitted failure to sign - User Documentation 鍵が鍵として認識されていないという説。 $ ssh-add ~/.ssh/id_rsa

git config --global color.ui true

Git

Git - Git の設定 $ git config --global color.ui true だいたいはtrueで足りるっていう話。

git-secrets

github.com qiita.com もっと使い方を探求せねば。private repoとか。

Gitのrefの応用: pull requestの情報をローカルに持ってくる

職場でGitのrefについてお話があって、同僚がこんなコマンドを紹介していました。 $ git fetch git@github.com:sample-user/sample-repo.git '+refs/pull/*:refs/remotes/pr/*' これで、GitHubのPRの情報をローカルに持ってこれます。PRの内容をローカルでチ…

git commit --amendでAuthorとメールアドレスを変えたい

Git

こういうやり方っす。 $ git commit --amend --author "New Author Name <email@address.com>" stackoverflow.com</email@address.com>

まだpushしていないコミットを表示したい

Git

わりと最近のgitの機能で、こんなのが追加されたっぽい。 # View commits that will be pushed git log @{u}.. stackoverflow.com ちなみに、このコマンドはcheatコマンド gitで会得した。 github.com

【追記あり】pecoを利用して、gitで変更のあったファイルにEmacsでアクセスする

qiita.com 表題のことをしたかったんですが、ってやってもうまくいかないんです。うまく説明できないんですが、git diffはlessっぽい挙動で、awkで拾えないけど、git statusだと結果は標準出力で送られるので、awkで拾えるって言う感じっぽい。 $ git diff |…

Gitのstashの中身を見たい

Git

stackoverflow.com わりとこれだけ。stashの指定もできちゃう。 $ git stash show -p $ git stash show -p stash@\{0\} とはいえ、stashを多用するのはよくないので、たぶんほどほどに。。。