タグ

Gitに関するapiraのブックマーク (30)

  • 普通のpatchコマンドで取り込めるdiffファイルをgitで作成する - kanonji’s diary

    まとめ $ git diff --no-prefix HEAD~ > thisis.patch $ patch --dry-run -p0 < thisis.patch $ patch -p0 < thisis.patch git diffに--no-prefixをつける事で、普通のpatchで当てられるパッチファイルを出力できます。この例ではHEADの1個前*1からHEAD*2までのパッチです。 普通のpatchコマンドのほうの知識があまり無くて-p0がいまいちよく分からないんですが、git diff --no-prefixで作成したパッチファイルを当てるには必要みたいです。--dry-runは、実際には当てないけど当てた場合の結果を出力します。なので、まずは--dry-runで確認して、問題が無ければ実際にパッチを当てます。 エントリー書いた後に教えてもらった補足 patch -p1の

    普通のpatchコマンドで取り込めるdiffファイルをgitで作成する - kanonji’s diary
    apira
    apira 2011/05/27
  • [プログラミング] [git] git rmの取り消し - それっぽい駄文

    以下のようにgit rmでファイルを消した場合 $ git rm hoge/hoge.c # 削除以下で復活できる。 $ git reset HEAD hoge/hoge.c # キャッシュ上で復活 $ git checkout hoge/hoge.c # ファイルの取り出しgit statusを見たら書いてあった。地味に親切だのう

    [プログラミング] [git] git rmの取り消し - それっぽい駄文
    apira
    apira 2011/05/19
  • Webサイトをgithubで管理してpush時に自動的に同期する方法 - Blog by Sadayuki Furuhashi

    Webサーバに Subversion のサーバを立てておき、HTMLCSS を commit することでWebサイトを更新する方法は、良く知られているテクニック、らしいですね*1。更新の履歴を残すことができるし、ましてチマチマとFTPやsftpでアップロードするよりずっと簡単です。 しかし SVN の代わりに git を使おうとすると、pushしてもリポートリポジトリではファイルを更新してくれません。 また、リポジトリはWebサーバ上に作るよりも、便利な管理インタフェースがある github(や噂のgitosis)に置いておきたいところです。 そこで、github の Post-Receive Hook を使うと、リポジトリに変更を push すると同時に、Webサーバにも同期させることができます*2。 Webサーバに同期する前に、Sphinxでドキュメントを整形したり、SassをC

    Webサイトをgithubで管理してpush時に自動的に同期する方法 - Blog by Sadayuki Furuhashi
    apira
    apira 2011/05/04
  • 分散バージョン管理勉強会で発表してきた #shibutra

    分散バージョン管理勉強会で発表してきました。 発表者の皆様、スタッフの皆様、参加者の皆様、 当におつかれさまでした。 初めての発表で、超が付くほど緊張してまして、いろいろと おききぐるしい点など、あったとは思いますが、生暖かい目で。 んで、発表が終わったので、資料公開します。 一部修正や改変を入れてます。 僕の名やら、神速さんの顔写真、あと大事なこととして 覚えておくといい命令に、help を追加しました。 自分でもよく使うのに、リストに入ってないという。 資料に関しては、使う用途があれば自由に使ってください。 皆様の何かの足しになれば幸いです。 git-svnつかってみる? View more presentations from riskrisk.

  • Git Immersion

    A guided tour that walks through the fundamentals of Git, inspired by the premise that to know a thing is to do it. Git is a powerful, sophisticated system for distributed version control. Gaining an understanding of its features opens to developers a new and liberating approach to source code management. The surest path to mastering Git is to immerse oneself in its utilities and operations, to ex

    apira
    apira 2011/04/28
  • [Git] Git コマンドメモ - それはBooks

    Git のコマンドメモ。 コミット ステージングエリアに追加する $ git add [--all] <filepattern> オプション –all を指定するとすべてのファイルをステージングエリアに追加する。 ステージングエリアから削除する $ git rm --cached <filepattern> git rm を使うと、ファイルを作業ツリーから削除する。–cached オプションを指定するとステージングエリアから削除するが作業ツリーには残った状態になる。 単にステージングエリアへの追加を取り消したい場合は対話モードを使って revert(取り消し)を行う。 $ git add -i staged unstaged path 1: +1/-1 nothing README.txt *** Commands *** 1: [s]tatus 2: [u]pdate 3: [r]eve

    apira
    apira 2011/04/27
  • git-mergeで--ff(デフォルト)と--no-ffと--squashの違い - u1tnkの日記

    きっかけ A successful Git branching model » nvie.com ここらあたりを見て、--no-ffつけときゃいいんだなーと深く考えずに使ってたら、--squashつけると安全とかなんとかチラ聞きして混乱しまくったので調べてみた。 とりあえずman。 man git-merge ... --ff, --no-ff Do not generate a merge commit if the merge resolved as a fast-forward, only update the branch pointer. This is the default behavior of git-merge. With --no-ff Generate a merge commit even if the merge resolved as a fast-forwa

    git-mergeで--ff(デフォルト)と--no-ffと--squashの違い - u1tnkの日記
    apira
    apira 2011/04/26
  • Gitのブランチで効率的に開発・運用・保守・管理する方法 - (DxD)∞

    はじめに 最初に、Gitに関するリソースとして、では「入門Git」と「実用Git」、Web上では「Pro Git」が読みやすく、わかりやすいため、Gitについて知りたい人は一読をおすすめします。 特に、他のバージョン管理システムに関する前提知識がある場合には、Gitの概念や使い方も比較的スムーズに理解できるかと思います。実際に、バージョン管理システムをSubversionからGitへと移行してからしばらくが経ちますが、通常の操作に関しては、それほど不自由することなくGitを利用できています。 しかし、Gitを利用していくにつれて色々と疑問も出てきます。局所的なワークフローについては、様々なリソースによって理解することができます。では、効率的に開発・運用・保守・管理を行うために、大局的・継続的なワークフローをどのように採ればよいのか、特にGitの柔軟性を活かすにはブランチをどのように使えば

    apira
    apira 2011/04/26
  • A successful Git branching model を翻訳しました

    Vincent Driessenさんの "A successful Git branching model" を翻訳しました。 元記事はこちら: http://nvie.com/posts/a-successful-git-branching-model/ (翻訳の公開と画像の利用は人より許諾済みです) このブランチモデルの導入を補助してくれる、git-flowというGit用プラグインがあるそうです。 翻訳の間違い等があれば遠慮なくご指摘ください。 A successful Git branching model この記事では、私のいくつかのプロジェクト仕事でもプライベートでも)で約一年ほど導入して、とてもうまくいくことがわかった開発モデルを紹介する。しばらく前からこれについて書くつもりだったんだが、今まですっかりその時間を見つけられずにいた。ここでは私のプロジェクトの詳細については書

    A successful Git branching model を翻訳しました
    apira
    apira 2011/04/26
  • githubでforkしたリポジトリから本家にpush - はこべにっき#

    昨日いっていた問題が解決したので,あらためてgithubでforkしたリポジトリから家にpushする方法. 家にコミット権があるのが前提なので,ふつうは家をcloneして作業すれば問題ないです.ただ,途中までforkで開発してたんだけど,ある日,コミット権をもらったりして家に反映したいような時には便利です. 以下folkしたリポジトリのcloneのmaster branchにて, # remote リポジトリを設定する $ git remote add jugyo git@github.com:jugyo/termtter.git $ git fetch jugyo # git pullして家の変更を取り込む $ git pull --rebase jugyo # 変更をgit pushする $ git push jugyo いろいろまわり道したけど,すごいやったことある,コレ.

    githubでforkしたリポジトリから本家にpush - はこべにっき#
    apira
    apira 2011/04/22
  • もっとよいGitチートシート - 西尾泰和のはてなダイアリー

    世の中にGitのチートシートはいくつかあるけど「Gitを知らない人に渡して最初に読んでもらうのに適したもの」が見つからない。チートシートじゃなくてチュートリアルと呼ぶべきかもしれないけど、とにかく印刷してA4で1枚になるくらいの資料が必要だ。Gitに触れた技術者が軒並み同じ落とし穴でコケるのは正しい状態ではない。「Gitには、indexっていう『コミットする前にワークツリーで行った変更のうちのどの部分をコミットするか整理するための場所』があるんだよ」とか「git revertはsvn revertと違っていきなりリポジトリに変更を加えるから気をつけて」とか最初に言ってもらえればもっとスムーズに進めたはずだ。 というわけでどういうチートシートが必要かに関して考えてみる。 登場人物 http://www.ndpsoftware.com/git-cheatsheet.html このチートシートが

    もっとよいGitチートシート - 西尾泰和のはてなダイアリー
    apira
    apira 2011/04/20
  • Git Cheatsheet

    stash workspace index local repository upstream repository status Displays paths that have differences between the index file and the current HEAD commit, paths that have differences between the workspace and the index file, and paths in the workspace that are not tracked by git. diff Displays the differences not added to the index. diff commit or branch View the changes you have in your workspace

    apira
    apira 2011/04/20
  • 【翻訳】あなたの知らないGit Tips

    Mislav Marohnićさんの "A few git tips you didn't know about" を翻訳しました。 元記事はこちら: http://mislav.uniqpath.com/2010/07/git-tips/ (翻訳の公開は人より許諾済みです) 翻訳の間違い等があれば遠慮なくご指摘ください。 あなたの知らないGit Tips注意:いくつかのコマンドやオプションは Git の version 1.7.2 以降が必要です。 OS Xでは、 Homebrew で簡単にアップグレードできます: brew install git git log でブランチとタグも見る$ git log --oneline --decorate 7466000 (HEAD, mislav/master, mislav) fix test that fails if current d

    apira
    apira 2011/04/07
  • メモ: GitHub でプルリクエスト(pull request)を処理する手順 - tkrdの日記 (rails や ubuntu のことなど)

    自分用のメモです。 kuroda/test からフォークした example/test レポジトリが存在すると仮定します。 今、example/test から kuroda/test に対してプルリクエストが届きました(ブランチは両方ともmaster)。 私(kuroda/testにpush権限を持つ)が example/test の変更を kuroda/test に取り込む手順は以下の通り。 1. まず clone。 $ git clone git://github.com/kuroda/test.git 2. 変更を取り込む。 $ git checkout -b example-master master $ git pull git://github.com/example/test.git master $ git checkout master $ git merge examp

    メモ: GitHub でプルリクエスト(pull request)を処理する手順 - tkrdの日記 (rails や ubuntu のことなど)
    apira
    apira 2011/04/07
  • Permanent SVN to Git Transition - terminaleleven.

    apira
    apira 2011/03/27
  • Subversionリポジトリと連携できるgit-svn | OSDN Magazine

    「Gitを使いたいが、中央リポジトリにはSubversionを使わざるを得ない」という場合も多いだろう。そのような状況で便利なのが、SubversionリポジトリとGitリポジトリの橋渡しをする「git-svn」である。git-svnを利用することで、SubversionリポジトリとGitのローカルリポジトリを同期させることが可能だ。記事では、このgit-svnの活用方法を紹介する。 git-svnのアーキテクチャ Gitの大きな特徴として、分散型アーキテクチャがある。分散型アーキテクチャでは、コミットはローカルのリポジトリに対して行い、ソースコードの同期はそれぞれの開発者間が持つローカルリポジトリ同士で変更点をやりとりすることで行う。もちろん公開リポジトリを利用したソースコードの同期も可能であり、柔軟な開発体制を取れるのが長所である。 しかし、一方でGitは非常に多数のコマンドがあり、

    Subversionリポジトリと連携できるgit-svn | OSDN Magazine
    apira
    apira 2011/03/27
  • あなたが知らない git svn の世界 | Act as Professional

    みんながいまだにsvnを使い続けるので、自分だけでもgitを使って幸せになってやる。って人のためのガイド。ツールや環境がsvnでがっちりつくられているとしかたないですねー。という状況の人向け。そこまでしてgitを使うのは早いし柔軟だから。マージもサクッと終わるし。 git svnって? svnをリモートリポジトリとして、ローカルではgitを扱うためのもの。gitインストールすれば大抵はいってるけど、macportsだったらこんな感じでインストール。 $ sudo port install git-core +svn gitローカルリポジトリをつくる gitは分散リポジトリなので、まずはローカルにリポジトリを持つところからスタート。 $ git svn clone -s http://svn.server/path/project これでsvnリポジトリのcloneをローカルにつくる。これで

    あなたが知らない git svn の世界 | Act as Professional
    apira
    apira 2011/03/27
  • Better Subversionとしてのgit-svn

    普段のプログラミングにgitを使用しているのだけど、実際の現場ではまだまだsvnが主流だったりする。svnを直接使ってもいいのだけど、やはりローカル上でコミットしたいとか、複数のコミットを1つにまとめたいとか、トピックブランチを切りたいとかあるのでそれはsvn単体だと厳しい。そんなわけでBetter SVNとしてのgit svnの紹介、と言うよりメモ。 リポジトリのクローン git svn clone repository_url これでsvnリポジトリをgitリポジトリとして取得できる。大きめのリポジトリだと結構時間がかかるのでのんびりと。svnリポジトリの構成がtrunk/branches/tagsという一般的な構成であればオプション-を付けるのがおすすめ。trunkをmaster、branches/tagsをremote branchとして扱うようになる。個別に指定する方法もあるので

    apira
    apira 2011/03/27
  • ウノウラボ Unoh Labs: git-svn駆け込み寺

    こんにちは。murahashiです。 gitやgit-svnを使うにあたり、試したことや引っかかったことについて、yukiのエントリ ウノウラボ Unoh Labs: subversionリポジトリでもgitが使えるgit-svn のつづきを書いてみました。 Q. ブランチ名を長くしてしまったので手打ちするのが大変です A. bashでgitコマンドを補完します gitのコマンド補完は git-completion.bash が便利です。 fedoraにyumでgitを入れた場合には下記場所にあります。 /usr/share/doc/git-VERSION/cntrib/completion/ 自分の見える場所にgit-completion.bashがなければ、インストール済みのgitと同じversionのgitのソースをダウンロードします。 cntrib/completion/

    apira
    apira 2011/03/27
  • gitとgithubを使ってみる - 南極の図書館

    gitgithub 職場ではsvnで特に困っていないし、gitは難しいと聞いていたため、gitgithubはずっと敬遠していた。 しかし、そろそろgithubを避けてもいられなくなってきたので(今更)gitの導入とgithubの登録を行った。 githubについては、オフィシャルの説明とチュートリアル(help.github)がとても丁寧なので、想像以上に簡単だった。 ただ、gitそのものは聞いていた通り理解に時間がかかりそう。 サインアップから設定まで https://github.com/ 最上段の「日語にしますか?」でYesをクリック。右上の「料金・登録」→画面が変わって「無料アカウントの作成」。 ユーザ名、メールアドレス、パスワードのみで登録ができる。 その後は「Set up git」の通りで特に詰まることは無かった。 ・gitのダウンロード(※1) ・sshの設定 ・nam

    gitとgithubを使ってみる - 南極の図書館
    apira
    apira 2011/03/22