1 名前:login:Penguin [2007/12/16(日) 18:40:39 ID:GslAi8rs] ソースコード管理を行うバージョン管理システム、git について語ろう。 あの、リーナス・トーバルズだって、バージョン管理を始めたんだ。 www.kernel.org/pub/software/scm/git/ git チュートリアル (バージョン 1.5.1 以降用) www8.atwiki.jp/git_jp/pub/Documentation.ja/tutorial.html
557 名前:552,555 mailto:sage [2009/11/22(日) 19:14:14 ID:AGTujtCR] たびたびすみません。自己解決しました。 BからAにPushしたあと、Aでgit reset --hard すればいいだけでした。 返信をくださった方ありがとうございました。
558 名前:login:Penguin mailto:sage [2009/11/28(土) 04:29:09 ID:mXZ4Zywn] バイナリファイルがコンフリクトした際にどのように対処してますでしょうか マージすることが不可能な場合、どちらかのファイルを選択することになりますが 自分の作業を優先してコンフリクト解消する場合には git add コンフリクトしてるファイル git commit これでコンフリクト解消できますが、相手のファイルを優先したい場合に git reset コンフリクトしてるファイル git commit をすると両者の作業がなかったことになってしまいます。 相手の作業を優先する場合にはどのようなコマンドを打てばよいのでしょうか
559 名前:login:Penguin mailto:sage [2009/11/28(土) 20:11:39 ID:xkqQAqqu] git checkout --ours --theirs
560 名前:login:Penguin mailto:sage [2009/12/03(木) 20:30:50 ID:lBf6Jtla] ttp://www.kernel.org/pub/software/scm/git/docs/RelNotes-1.6.5.4.txt
561 名前:login:Penguin mailto:sage [2009/12/04(金) 13:36:14 ID:F6K5uhGt] -----B / \ -------A \ ---C という感じで開発を進めていて、Bの変更はマスターであるAに頻繁にマージしている状態です。 Cで $ git pull A でマージして $ git push A とすると To prevent you from losing history, non-fast-forward updates were rejected. Merge the remote changes before pushing again. といわれてしまう。 なんでnon-fast-forwardな状況なんだかよくわからないです。どうやったら直せるんでしょうか?
562 名前:login:Penguin mailto:sage [2009/12/04(金) 22:38:29 ID:8MryHyNF] >>561 pushとpullって名前からしてやることが近い気がしてしまうけど、 pull:remoteをfetchして現在のブランチにmerge(fetchしてmergeするのと同じことが起こる) push:remoteブランチをローカルのブランチで上書き なので、pullはfast-forwardじゃなくてもマージコミット作ってくれるけど、 pushはマージはしないのでfast-forwardじゃない時は怒られる。forceオプションで強制pushすると ヘタするとremoteブランチのコミットが失われる。 fast-forwardの意味が分からない場合は、チュートリアル見ると良いと思うよ。 Git入門 - トップページ www8.atwiki.jp/git_jp/
563 名前:login:Penguin mailto:sage [2009/12/05(土) 10:43:44 ID:Pt8GWP/i] >>562 「なんでnon-fast-forwardな状況」であるかの説明になっていないけど
564 名前:login:Penguin mailto:sage [2009/12/05(土) 13:58:28 ID:dGM7vi/8] >>563 それが分からなければチュートリアル読んだほうが良いと思ったから。
565 名前:login:Penguin mailto:sage [2009/12/06(日) 00:13:42 ID:O+n3DTMA] >>564 質問は「なんでnon-fast-forwardな状況」なのかであって 「(non-)fast-forwardとは何か」ではないので、だったら >>561 の説明自体無駄で最初からチュートリアルのURLだけ 案内するのと変わんねーじゃん
566 名前:login:Penguin mailto:sage [2009/12/06(日) 03:51:03 ID:3OwwH+xV] >>565 ほんとだ、俺寝ボケてたみたいだわ。ごめん。 >>561 Bの進化分は既にAに反映されているが、Cはそれ以前のAの状態を元に進化しているので、 non-fast-forwardということになる。
567 名前:login:Penguin mailto:sage [2009/12/07(月) 12:28:13 ID:XoL3Gt8w] Git 1.6.5.5 ttp://www.kernel.org/pub/software/scm/git/docs/RelNotes-1.6.5.5.txt >Manual pages can be formatted with older xmlto again.
568 名前:561 mailto:sage [2009/12/07(月) 13:26:24 ID:BLewJ948] 若干荒れ気味になってすみません。 >566 >Bの進化分は既にAに反映されているが、Cはそれ以前のAの状態を元に進化しているので、 でその通りでした。Cで $ git pull B コンフリクト等解決して $ git push A でOKでした。
569 名前:561 mailto:sage [2009/12/07(月) 13:34:18 ID:BLewJ948] で、思ったんですが、non-fast-forwardな原因を追いかけるのはどうやるのが一番わかりやすいですかね? 私の今回の場合、過去にどう作業していたか思い出した、という原始的な方法だったんだけど、便利なコマンドとかありますか? $ git log --graph とか見ても、ごっちゃで気づけなかったです。
570 名前:login:Penguin mailto:sage [2009/12/07(月) 14:54:49 ID:XoL3Gt8w] >>569 git statusした時に # Your branch and 'origin/master' have diverged, # and have 1 and 1 different commit(s) each, respectively. という感じで出るので、これで分かる。ただしgitのバージョンが古いとこれ出ない。 git show-branchも調べてみたらいいかも。あとgitkはそれなりに見やすいと思うな。 >>561 >Merge the remote changes before pushing again. これやってみればいいのに。mergeだけだとマージコミットだらけになっちゃうから、 rebase出来る時はrebaseした方がいいけどね。git pull --rebaseとか。
571 名前:login:Penguin mailto:sage [2009/12/08(火) 01:34:52 ID:JrbFTpX+] >>569 gitk --all と打つとグラフィカルにグラフ表示してくれるので fast-forwardかどうかすぐわかる
572 名前:561 mailto:sage [2009/12/10(木) 14:41:50 ID:ZxyM+JCY] >570,571 リモートのコンソールにログインして使うことが多いので、gitkは使えないんです。 X飛ばすのも面倒な環境だし。 git show-branch の見かたを覚えることにしますわ。
573 名前:login:Penguin mailto:sage [2009/12/11(金) 09:24:45 ID:n6TyF9bQ] git clone すればいいんじゃね?
574 名前:login:Penguin mailto:sage [2009/12/12(土) 01:53:51 ID:1uRf1xZK] 入門Git買ったんだが、これ分かりやすいな さすがに濱野さんが書いてるだけあるか。 チームで使うSCMをSubversionからGitに変えたいんだが メンバー全員に正しいGitの使い方を教育するのは、骨が折れそうだな・・・
575 名前:login:Penguin mailto:sage [2009/12/12(土) 02:23:58 ID:7I0ALriM] >>574 入門Git、神本なのは確かだけど、俺としては日本語ちょっとクドい気がしたな。 アメリカ在住らしいから、脳が英語になってるんじゃなかろうか。 Gitって、viとかみたいに取っ付きにくいけど慣れてしまうと手放せなくなる 典型的な麻薬ツールだと思う。そのぶん障壁が高くて文句言われがちなんだけど。 だから「メンバー全員に正しいGitの使い方を教育」するのは、難しいだろうけど そのぶん感謝もされるし、また始めての人にどう教えたら本質を理解してくれるのか というのは、とても有用な情報だと思う。
576 名前:login:Penguin mailto:sage [2009/12/12(土) 14:40:22 ID:0trcq50X] >>574 良い本だとは思うけど、わかりやすくはないと思う。 まわりを教育するには初心者向けのわかりやすい本が欲しい。
577 名前:login:Penguin mailto:sage [2009/12/12(土) 15:31:09 ID:1uRf1xZK] >>575 ,576 日本語で読めるGitの入門書って濱野本、でびあんぐる本、ProGitくらいしかないしなぁ でびあんぐるのは知らないけどProGit、濱野本の順で読ませるのが分かりやすいんじゃないかな
578 名前:login:Penguin mailto:sage [2009/12/12(土) 15:35:54 ID:1uRf1xZK] >>575 Gitが難しいのは、思想や観念を理解するのが難しいわけじゃなくて コマンド/オプションが多すぎる、同じコマンドで2種類以上の役割を持たせてる あたりが敷居を高くしてる気がする
579 名前:login:Penguin mailto:sage [2009/12/12(土) 18:45:28 ID:7I0ALriM] >>578 いや、コマンドの数が多いのは確かだけど、普段使うものは数えるほどしか無いよ。 それに全コマンド一覧なんて初心者に見せるか? 下位レベルコマンドは知る必要ないし。 もっとも障壁が高いのはGitの本質を知る事だと思う。特にsvnをやってた人は 「Gitで何が出来るのか」ではなく「svnでやっていたことをGitでやろう」とするので 自分がやっていることがほんとうは何を意味するのかよく分からないまま使うことになり、 「使いづれー」ってなる気がする。 頭を切り替えてチュートリアルを実践するだけで、けっこう分かると思うんだけどな。 >>577 最近初心者向けにGitのことブログで書いてる人も多いね。俺は純正チュートリアルでも けっこういけると思うんだけどね。最初は会社の同僚からGit教えてもらったんだけど、 これは麻薬ツールの典型なんだが、会得してしまった人は会得してない人に教えるのが 上手くできないんだよね。viとかemacsとか、そう簡単に教えられるものじゃないみたいに。 だから結局は全て自分でチュートリアルやって覚えたけど、最初はどうしてもsvnとかに なぞらえてしまって、イライラしたな。
580 名前:login:Penguin mailto:sage [2009/12/12(土) 19:41:26 ID:91i8JXzY] >>578 resetはreset(巻き戻し)とunstage(indexからの削除)に分けるべきだよな 他には何があるっけ?
581 名前:login:Penguin mailto:sage [2009/12/13(日) 04:59:08 ID:XTGOd8wr] >>579 Webなんかでも、svnのこのコマンドに相当するgitのコマンドは何?って質問が 結構あるしやっぱり本質は理解されてないかんじですね indexも存在意義がわかれば非常に便利なんだけど。 Winの話題で申し訳ないけれど、TortoiseGitなんかもindexの存在を隠して ワークツリーから直接コミットするような作りになってるし >これは麻薬ツールの典型なんだが、会得してしまった人は会得してない人に教えるのが たしかにそうですねw >>580 よく使うコマンドだと checkout ブランチ名(ブランチ切り替え) checkout -- ファイル名(ファイル取り出し) reset HEAD^(コミット取り消し) reset ファイル名(ファイルアンステージ) reset --hard(ワークツリーの修正取り消し)
582 名前:login:Penguin mailto:sage [2009/12/13(日) 12:05:06 ID:eLNfVime] 言葉で伝えるのは難しくて チュートリアルをいじって自分の頭の中に動作イメージを作るか よくできた紙芝居を見せてもらうかしないと 「わかった」とはならなよね。
583 名前:login:Penguin mailto:sage [2009/12/13(日) 21:39:57 ID:MfgUdwK5] >>580-581 まあでも「alias書けば?」で終わるレベルじゃん
584 名前:login:Penguin mailto:sage [2009/12/13(日) 22:56:38 ID:hWQ7uDdJ] だよね
585 名前:login:Penguin mailto:sage [2009/12/13(日) 23:48:27 ID:yRHWt0hz] 打つのがめんどいって話じゃなくて分かりづらいって話では?
586 名前:login:Penguin mailto:sage [2009/12/14(月) 00:06:09 ID:iC7LD6wI] aliasには「分かりやすい名前をつける」という機能もあるんだけど
587 名前:login:Penguin mailto:sage [2009/12/14(月) 00:12:42 ID:1YNrTAVE] 一度やりたいことをしてくれるコマンドを知れば別名も 付けられるんだけどねー。 分かるまでがたいへん。
588 名前:login:Penguin mailto:sage [2009/12/14(月) 00:21:12 ID:MiMO4S1u] そのaliasを設定するためにはコマンドの使い方知ってなければ ならないが、話の論点わかってますか?
589 名前:login:Penguin mailto:sage [2009/12/14(月) 00:50:41 ID:uqSDssQD] aliasでこんなんやっちゃう人もいるみたい ttp://github.com/blog/564-hub-git-with-github
590 名前:login:Penguin mailto:sage [2009/12/14(月) 20:21:03 ID:9KU3MLe4] 俺はrefspecの表し方がよく分からない。 文脈で書き方が $ git push repository branch だったり $ git merge repository/branch だったりするところとか。理解しきれてないからなんだろうけど。
591 名前:login:Penguin mailto:sage [2009/12/14(月) 22:02:14 ID:iC7LD6wI] >>588 そしてある程度分かってきたら、よほど長くない限りalias使わなく てもよくなるんだけど、誰かが作ってくれたalias集をwebから 持ってきて、... なんて方法も今はあるからね。
592 名前:login:Penguin mailto:sage [2009/12/15(火) 00:21:21 ID:uU/CeyJd] リモートブランチの扱いが俺も最初はとまどったけど 省略形じゃなくてフルで記述するコマンド体系を覚えてから 省略形を使うようにしたら、すんなり理解できた $ git push repository branch は 実は $ git push repository branch:branch の省略形で、手元のbranchからrepositoryのbranchへ対してpushしなさいという意味 一方mergeのorigin/masterなどは、具体的なコミットを指しているので リポジトリ名/ブランチ名となる
593 名前:login:Penguin mailto:sage [2009/12/15(火) 04:59:39 ID:pR/bRTj/] >>592 もう忘れてたけど確かに俺もそうだわ。 pushはフル書式で理解するまではかなり自信なさげに使ってた。
594 名前:login:Penguin mailto:sage [2009/12/24(木) 15:20:36 ID:v3JWri2J] 1.6.6 released
595 名前:login:Penguin mailto:sage [2009/12/25(金) 21:55:28 ID:lY3loZi6] stashとresetに頼りまくってる自分の使い方は邪道なんじゃないかと 気になるんだが、indexとかうまく使えば減るだろうか
596 名前:login:Penguin mailto:sage [2009/12/26(土) 00:20:32 ID:EUZh5OCV] >>595 運用上不都合がなければいいんじゃない?
597 名前:login:Penguin mailto:sage [2009/12/26(土) 06:40:51 ID:SkSud091] >>595 reset、rebase、resetに頼りまくれるようになってはじめて、一人前のGit使いだと思う。 commitとmergeだけじゃ今までのVCSと変わらないじゃないか。
598 名前:login:Penguin mailto:sage [2009/12/26(土) 06:42:53 ID:SkSud091] reset、rebase、resetってなんだよorz reset、rebase、stashのつもりだった。。。 あとrebase --onto、rerereなんか使うとさらに先にいける。
599 名前:login:Penguin mailto:sage [2009/12/26(土) 10:39:25 ID:AQehkmKr] おーでかーけでーすかー
600 名前:login:Penguin mailto:sage [2009/12/26(土) 12:12:59 ID:Z6Z05dDL] 今だにpush,pull,rebaseの使い分けがわかんないんだよな。 普段git svnでやりとりしてるとrebaseだけで事足りるというだけなのか
601 名前:login:Penguin mailto:sage [2009/12/29(火) 01:24:35 ID:AAGVKxmF] そりゃgit svnではpush, pullは使いようがないというか、使ったらぶっ壊れるんじゃ。
602 名前:login:Penguin mailto:sage [2009/12/29(火) 14:12:54 ID:utuwRMGk] 他にもgit svnを使っているメンバーがいた場合、 そいつとは、pushやpullができるという
603 名前:login:Penguin mailto:sage [2009/12/29(火) 18:19:26 ID:erZVRnS3] >>602 でも結局いつかgit svn rebaseするから、ID全部変わるしマージコミット入れられないしで うぼわーマジsvnやめようぜクソがぁ! ってなる。
604 名前:login:Penguin mailto:sage [2009/12/30(水) 07:38:54 ID:kfBW1mPl] しかしsvnに入れた分はちゃんとIDそろうのはすげーと思ったな。
605 名前:login:Penguin mailto:sage [2010/01/08(金) 12:31:36 ID:S57JTlxp] オリジナルの拡張子を持ったファイルをコミットすると、rawファイルとして認識されるみたいですが、 textファイルだとgitに教える方法はありませんでしょうか?
606 名前:login:Penguin mailto:sage [2010/01/09(土) 10:57:40 ID:3So5fkbw] >605 gitattributes で crlf と diff をセットだと思う。
607 名前:login:Penguin mailto:sage [2010/01/12(火) 19:43:07 ID:2XlpNrfT] githubみたいに、git archiveで生成するアーカイブに コミット名を入れたいのですが、みなさんはどうやって取得していますか? 知りたいコミットがHEADとした場合、bashでは VER=`cat ".git/\`cut -d \ -f 2 .git/HEAD\`"` でコミット名が取得されるのですが、 Makefile内だとうまくエスケープ?されなくて困っています。 他の方法があればそちらで試してみたいと考えています。 ちなみに、Makefile内では @VER=$(shell cut -d \ -f 2 .git/HEAD) @VER=$(shell cat .git/$(VER)) echo $(VER) としているのですが、変数VERが空になってしまいます。
608 名前:login:Penguin mailto:sage [2010/01/12(火) 23:43:38 ID:914bGyNn] git describe --always
609 名前:login:Penguin mailto:sage [2010/01/13(水) 05:50:58 ID:+l7m8J7G] git rev-parse HEAD
610 名前:login:Penguin mailto:sage [2010/01/13(水) 09:58:54 ID:/kr/i6EO] github は、タグからアーカイブを生成する場合、アーカイブのファイル名にタグ名を含めてほしい。
611 名前:login:Penguin mailto:sage [2010/01/18(月) 10:24:04 ID:xAKlwsjN] example.log っていうファイルがあって このファイル自体はpushされていて、でも今後の変更分についてはpushしたくないってとき、どーするのが正解? git rm --cached して版管理自体をやめるわけにはいかないんだけど
612 名前:login:Penguin mailto:sage [2010/01/18(月) 11:48:43 ID:9pALEWP2] ignore すれば?
613 名前:login:Penguin mailto:sage [2010/01/18(月) 11:58:05 ID:xAKlwsjN] >>612 すでに版管理されてるからmodified filesとしてあがってきちゃう commit対象としてのみ無視したいんだけど、ignoreできるの?
614 名前:login:Penguin mailto:sage [2010/01/18(月) 20:36:24 ID:KAj8+0o6] >>611 ローカルリポジトリでバージョン管理するのを止めれないなら ignoreできないから、簡単な方法はないでしょう。 push用のブランチを作り、手でrebaseしてそのファイルへの修正が 入らないようにしてからpushするとかしか思いつかないけど。
615 名前:login:Penguin mailto:sage [2010/01/18(月) 20:43:21 ID:2FuAr7Gb] push 用の branch とローカルでの example.log の変更を commit する branch とを作ればいいんじゃないかな。
616 名前:login:Penguin [2010/02/04(木) 11:09:26 ID:5W3FJugT] CVSやSVNは集中型、gitは分散型 とあるんだけど 何が集中したり分散したりしてるの?
617 名前:login:Penguin mailto:sage [2010/02/04(木) 11:11:53 ID:CYNiw1E3] リポジトリ(履歴データを持っている場所)が1つか、複数か。
618 名前:login:Penguin mailto:sage [2010/02/04(木) 13:34:55 ID:YQOQkcZC] 集中型は権力も集中しがちになる(コミット権がうんたら)
619 名前:login:Penguin mailto:sage [2010/02/04(木) 14:30:46 ID:5W3FJugT] じゃあgitはオープンソースに適してるんですね。 仕事用で使いたくて、なるべく権力を集中させたいので gitは見送ります。ありがとうございました。
620 名前:login:Penguin mailto:sage [2010/02/04(木) 17:54:59 ID:5NWhCwR0] ワークフローは運用次第ってだけの話だが。 progit.org/book/ch5-1.html github.com/progit/progit/blob/master/ja/05-distributed-git/01-chapter5.markdown
621 名前:login:Penguin mailto:sage [2010/02/04(木) 19:37:14 ID:YQOQkcZC] 分散型に出来て集中型に出来ないことは無いんじゃない?
622 名前:login:Penguin mailto:sage [2010/02/04(木) 19:39:44 ID:YQOQkcZC] あれ逆か、集中型で可能なことは分散型で出来る。
623 名前:login:Penguin mailto:sage [2010/02/04(木) 19:55:52 ID:gmC/Yryo] >>619 要は、運用次第で権力集中可能 例えば、マスターリポジトリの更新権限を限定するとか(つ〜か普通そうするんじゃ…)
624 名前:login:Penguin mailto:sage [2010/02/04(木) 20:47:50 ID:JYXesGU0] >>622 オフラインでのコミットとか無理じゃね? ローカルにリポジトリあれば別だけど自分以外ができないからあれだし
625 名前:login:Penguin mailto:sage [2010/02/04(木) 21:36:49 ID:G2p82aGi] あと、うっかり変なcommitをしてしまったとき、gitならpushしない限り大丈夫だが、 集中型だとお説教タイムになってしまう悪寒
626 名前:login:Penguin mailto:sage [2010/02/05(金) 00:04:47 ID:+YPRuxoa] >>625 巻き戻せばいいだけでは。
627 名前:login:Penguin mailto:sage [2010/02/05(金) 01:55:01 ID:CLmEj5oN] >>626 普通巻き戻しは特権がいるんじゃない。 で、特権のある人に お説教されるとw
628 名前:login:Penguin mailto:sage [2010/02/06(土) 00:46:55 ID:44qJRz29] お説教なの? ニヤニヤされるんじゃなく?
629 名前:login:Penguin mailto:sage [2010/02/09(火) 20:22:37 ID:RAlUQWhi] せんせーきほんてきなしつもーん ターミナルが A と B の 2個あったとして、 A で git checkout one したあと B の Emacs でたくさん git 対象ファイルを開いて、そのまま、 A で git checkout two するとします Emacs で開いてるバッファ内容ってやっぱり one のままだよね? バッファを編集して保存したら one のファイル内容が two のファイルに上書きされて「危険」だよね? A でブランチを切り替えるたびに Emacs のバッファは全部閉じて再度開きなおさないといけないよね理屈上
630 名前:login:Penguin mailto:sage [2010/02/09(火) 20:36:57 ID:b7GskCpL] emacs使いじゃないから知らないが、バッファ読み込み後にファイルが更新されてるのを 警告もなしにそのまま上書きしちゃうのか?
631 名前:login:Penguin mailto:sage [2010/02/09(火) 20:39:16 ID:acViODVs] ニヤニヤ
632 名前:login:Penguin mailto:sage [2010/02/09(火) 20:39:37 ID:nKVKxkV8] ちゃんと警告してくれますよ。
633 名前:login:Penguin mailto:sage [2010/02/09(火) 20:47:12 ID:9V49chdu] screen と emacsclient使え。
634 名前:login:Penguin mailto:sage [2010/02/10(水) 09:43:04 ID:QkCzSUH3] Emacsの revert-buffer を使えばバッファを再読み込みしてくれるけど……
635 名前:login:Penguin mailto:sage [2010/02/10(水) 10:00:40 ID:0TBtUf8g] >>629 危険ていうか、それはgitじゃなくても他の端末から同じファイルを編集したら同じことになるでしょ。 俺はvimだけど、ブランチ切り替えもそうだけど、git stash -> git svn dcommit -> git stash pop ってやった後に保存しようして、警告が出るな。 このパターンだと十中八九ファイルの内容は変わってないんだけど、念のため確認するようにしてる。
636 名前:login:Penguin mailto:sage [2010/02/10(水) 15:21:40 ID:M9UhD/wS] git-mode上でブランチ切り替えたら再読み込みしてくれたりしないかな ようはEmacsがブランチ変更を検知しないことが問題なんだよね 上書き警告だって本質的な対策じゃない ブランチが変更されたんだから、編集したいのはそのブランチのファイルのはず
637 名前:login:Penguin mailto:sage [2010/02/10(水) 15:26:10 ID:3rYFILyb] Emacsの普通の設定ならタイムスタンプが変わってたらrevertするか聞いてくるだろ
638 名前:login:Penguin mailto:sage [2010/02/10(水) 15:31:20 ID:M9UhD/wS] >>637 それがめんどくへえという話なのでは… 編集中のバッファでなければこっそり開きなおしてくれてるくらいのサービス精神がないと 不況下の日本ではEmacsは生き残れないぞたぶん
639 名前:login:Penguin mailto:sage [2010/02/10(水) 15:33:25 ID:uKVeMcIn] >>638 そうしたいならそうすればいいじゃん
640 名前:login:Penguin mailto:sage [2010/02/10(水) 15:43:03 ID:9JULZJQU] git はメンテしてる Junio Hamano 氏がとんでもないナンパ野郎だと知って以来、 極力避けるようにしてる。濱野氏がメンテから降りたらもっと使ってもいいかな。
641 名前:login:Penguin mailto:sage [2010/02/10(水) 16:33:53 ID:wST9AMIH] ふーん
642 名前:login:Penguin mailto:sage [2010/02/11(木) 11:44:58 ID:yw+dRYs8] >>640 どのへんがナンパ野郎なのか教えて
643 名前:login:Penguin mailto:sage [2010/02/11(木) 12:45:14 ID:XV6xszzu] 濱野氏は、美人研究者のブログで、その人が git 好きなのをネタにして、 「今度 git の講演に日本に行くから、その時に二人でデートしようぜ」 と本気でナンパしていたと聞いている。
644 名前:login:Penguin mailto:sage [2010/02/11(木) 15:02:11 ID:nZMD/n4Y] べつにgitをユーザが増えようと減ろうとJunioのナンパに貢献する ことはないと思うけど、それ以前に共通の趣味をネタに口説くこと がどうまずいのかも不明。
645 名前:login:Penguin mailto:sage [2010/02/11(木) 15:10:50 ID:yJW9hFuf] 女を捨てまくってるとかならともかく、アプローチしてるだけでそこまで嫌悪する必要ないだろ
646 名前:login:Penguin mailto:sage [2010/02/11(木) 15:55:14 ID:WaojUPKf] >>643 糞ワロタwww ブログでかよ? 他に読んでる奴等もいるだろうし、 さすがにそれはねーわなw
647 名前:login:Penguin mailto:sage [2010/02/11(木) 17:30:48 ID:aEGTGT/7] gitに使う価値があるかどうかは、 メンテナ氏の女性へのアプローチ法とは関係がない
648 名前:login:Penguin mailto:sage [2010/02/11(木) 19:24:12 ID:oAJQYaS+] どこのblogかkwsk
649 名前:login:Penguin mailto:sage [2010/02/11(木) 20:12:33 ID:jeJxZddW] 嫌儲の男女バージョンみたいな感じだな
650 名前:login:Penguin mailto:sage [2010/02/11(木) 22:27:09 ID:71QNNVeu] >>638 auro-revert-bufferじゃだめなのか?
651 名前:login:Penguin [2010/02/12(金) 01:58:47 ID:hFHmJq9f] ソースコードを本番にデプロイする時についてなのですが、 前回デプロイ時のソースとの差分だけ抽出して、そのファイルだけ本番にデプロイできるようにしたいと考えています。 今レポジトリにコミットしたリビジョンと、前回デプロイ前のコミット時のリビジョンの差分を 抽出することができればと思うのですが、それ用のコマンドってgitにあるでしょうか?? 教えていただけると幸いです。
652 名前:651 [2010/02/12(金) 02:00:25 ID:hFHmJq9f] すいません、言葉足らずでした。 >>今レポジトリにコミットしたリビジョンと、 >>前回デプロイ前のコミット時のリビジョンの差分を >>抽出することができればと思うのですが、 更新のあったファイルの「ファイル名」だけ、gitのコマンドで抽出できないか、という意味です。
653 名前:login:Penguin mailto:sage [2010/02/12(金) 08:54:33 ID:hx+CbuVO] >651 どーやってデプロイしてるのか教えれ。
654 名前:login:Penguin mailto:sage [2010/02/12(金) 11:50:19 ID:StLEjzjs] >>652 git diff --name-onlyとか、どう?
655 名前:login:Penguin mailto:sage [2010/02/12(金) 14:33:42 ID:MaWIE5lB] >>651 普通にgit pullしたら早いと思うんだけどな。 rsyncするよりも手軽だし。
656 名前:651 [2010/02/12(金) 15:29:51 ID:hFHmJq9f] レスありがとうございますm(_ _)m >>653 ftpかsftpでデプロイしようと思っています。 本番環境はさくらインターネットの供用サーバです。 >>654 やってみました。 これって、コミットする前の、さらにステージする前の差分ファイルを抽出するんですね。 git diff --cached --name-only って試してみたらステージ後の差分ファイル一覧も出力出来ました。 やろうとしていることは大体こんな感じなのですが、 2つ前のコミットと1つ前のコミットの間で更新されたファイル一覧の出力ってのはできないでしょうか?? >>655 なるほど、本番環境に入ってpullするんですね。 仕事では本番サーバも自分で用意してgit環境も構築してたのですが、これってやったことありませんでした。(普通にsftpとかrsyncで・・) ただ今回の場合、デプロイ先がさくらインターネットの共有サーバなので、git環境を構築出来ないと思うんですよね。 なので普通にftpとかsftpでアップしようと思っています。 ちなみに、本番環境でgit pull する方法で、本番ウェブサーバが複数ある場合は、 それぞれにログインしてウェブサーバ毎にgit pullする感じですか?
657 名前:login:Penguin mailto:sage [2010/02/12(金) 15:54:21 ID:MaWIE5lB] >>656 >ちなみに、本番環境でgit pull する方法で、本番ウェブサーバが複数ある場合は、 >それぞれにログインしてウェブサーバ毎にgit pullする感じですか? どれぐらい気をつかってやるかにもよるんじゃないか。 静的コンテンツをただ更新するだけならrsyncとかgit pull/pushとかをスケジューリングで 自動でやらせてもいいかもしれないけど、warなんかだとそうもいかないだろうから リリース毎にウェブサーバ切り替えながら慎重にやるんじゃない? てきとうにググったら、さくらのレン鯖にGit入れてる人けっこう居るみたいだよ ttp://www.google.co.jp/search?q=%E3%81%95%E3%81%8F%E3%82%89+%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC+git 俺もさくらのやつあるんだよね。今度やってみようかな。