1 名前:デフォルトの名無しさん mailto:sage [2011/07/12(火) 01:53:58.45 ] ソースコード管理を行う分散型バージョン管理システム、Gitについて語ろう。 Git - Fast Version Control System git-scm.com/ ◆前スレ Git 2 hibari.2ch.net/test/read.cgi/tech/1284467898/ ◆関連サイト Pro Git - Table of Contents progit.org/book/ja/ Git入門 www8.atwiki.jp/git_jp/
487 名前:デフォルトの名無しさん mailto:sage [2011/10/26(水) 20:47:17.46 ] 他の開発者との中央へのコミット内容が競合した場合の対応ってgitだとsvnより楽だったりしますか
488 名前:デフォルトの名無しさん mailto:sage [2011/10/26(水) 21:27:48.69 ] つーかSVNが苦行
489 名前:デフォルトの名無しさん mailto:sage [2011/10/26(水) 21:35:10.19 ] うんこよりマシ
490 名前:デフォルトの名無しさん mailto:sage [2011/10/26(水) 21:57:09.24 ] >>487 楽だよ。3wayマージ賢い。 さすがに同じタイミングでがっつり同じ箇所ぶつかったら 手でマージすることになるけど、補助ツール使えばなんとかなる。
491 名前:デフォルトの名無しさん mailto:sage [2011/10/26(水) 22:51:45.87 ] バイナリ込みで数十 GB とかいける?
492 名前:デフォルトの名無しさん mailto:sage [2011/10/26(水) 23:39:13.23 ] いけると思うけどでかいバイナリを頻繁に変更するならちょっときついかもしれない
493 名前:デフォルトの名無しさん mailto:sage [2011/10/27(木) 00:37:19.80 ] target ディレクトリを毎回コミットする奴にはどういえば直るだろうか
494 名前:デフォルトの名無しさん mailto:sage [2011/10/27(木) 07:53:31.04 ] >>493 TortoiseGit 病だな?
495 名前:デフォルトの名無しさん mailto:sage [2011/10/27(木) 09:04:05.61 ] >>493 gitignoreしたらどうなの?
496 名前:デフォルトの名無しさん mailto:sage [2011/10/27(木) 17:07:40.40 ] 3wayマージは補助でp4merge使うと、ほとんど手修正しなくていいぞ
497 名前:デフォルトの名無しさん mailto:sage [2011/10/27(木) 22:20:26.99 ] >>495 新規モジュールでやられてしまうので
498 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 10:27:29.73 ] 開発ブランチ(master)と、リリースブランチ(rel-X.X)とがあって、リリースブランチ(または開発ブランチ)に行ったcommitを、もう一方のブランチにcherry-pickしています。 このとき、両ブランチの間でどのコミットがcherry-pickされていて、どのコミットがされてないかを調べるいい方法はないでしょうか。
499 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 11:28:41.10 ] git pullを試みたところ、 error: Your local changes to the following files would be overwritten by merge: と言われました。しかし、今現在worktreeにある変更はどうでもいい些細なものなので、worktreeにある変更を 破棄して、とにかくpullしたいです。どうすればいいですか?
500 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 11:32:47.15 ] >>499 よーわからんけど、ローカルの変更がどうでもいいなら全部消してcloneし直せばいいんじゃ?
501 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 12:46:04.13 ] >>499 競合のあるbranch上で git reset --hard origin/upstream_worktree
502 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 13:12:17.86 ] >>498 git cherry -v branchA branchB で、ある程度分かるかもしれない
503 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 14:04:15.67 ] >>502 git checkout rel-X.X git cherry -v --abbrev=8 master で望みの結果が得られました。 + が、rel-X.X にだけ適用されて、masterには適用されてないcommit、 - が、rel-X.Xとmasterの両方に適用されているcommit のようです。 ありがとうございました。
504 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 15:39:51.17 ] また2重管理で苦しんでるな 何の罪も無い純粋な技術者がなぜ苦しまなければならないのか
505 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 15:49:26.51 ] 別に苦しんでないだろ 自分で調べるのが面倒なのがここで質問して、おせっかい焼きが答えてるだけ
506 名前:デフォルトの名無しさん [2011/10/29(土) 13:35:21.20 ] HEADだけcloneするにはどうやればいいのでしょうか?
507 名前:デフォルトの名無しさん mailto:sage [2011/10/29(土) 15:12:07.97 ] なんだそりゃ 全ファイルの旧編集履歴をひとつの最新コミットに詰め込んで新たに履歴1個だけのブランチを作りたい?
508 名前:デフォルトの名無しさん mailto:sage [2011/10/29(土) 15:37:35.49 ] Signed off by って Linus のオナニー以外に何の意味があるの?
509 名前:デフォルトの名無しさん mailto:sage [2011/10/29(土) 15:46:14.22 ] ユーザー無視の開発者のオナニーの産物
510 名前:デフォルトの名無しさん mailto:sage [2011/10/29(土) 20:54:41.26 ] なんでSigned-off-by:がLinusのオナニーってことになるのか意味不明。 著作権者をtrackするための重要な情報なのに。
511 名前:デフォルトの名無しさん [2011/10/29(土) 21:39:58.53 ] 元の作者を尊重しつつ、コード作成とコミットの責任所在をわけることが出来る 仕組みのはずなんだが、Sign-Offに名前が出ることが売名行為に見えてるんだろうね。
512 名前:デフォルトの名無しさん mailto:sage [2011/10/29(土) 22:12:58.99 ] 名無しさん以外のものを拒絶する2chならではの反応だなぁ、と
513 名前:デフォルトの名無しさん mailto:sage [2011/10/29(土) 22:45:05.74 ] author と comitter の違いとは別なの?
514 名前:デフォルトの名無しさん mailto:sage [2011/10/30(日) 04:12:17.33 ] >>506 git clone --depth 1 その後出来ることに制限があるのでman見たりググったりしてくれ
515 名前:デフォルトの名無しさん mailto:sage [2011/10/30(日) 15:37:19.58 ] >>513 新たにcommitができるような場面では committer が作業者のものになる。 (git-am, git-cherry-pick など). このとき committer date も更新することになる。 git-commit --amend, conflict merge など、作業者の変更の余地が入るような commit では author も上書きされる。 のような運用だが、 git-commit (もしくは git-commit-tree) にて任意に上書き可能。
516 名前:デフォルトの名無しさん mailto:sage [2011/10/31(月) 21:00:38.97 ] $ git pull Your configuration specifies to merge with the ref 'master' from the remote, but no such ref was fetched. というメッセージが出るんですが、これってどういう意味ですか? 「ref」はブランチのこと? もしそうだとして、これは「masterブランチをとってこようとしたけどリモートには存在しなかったよ」という意味?
517 名前:デフォルトの名無しさん mailto:sage [2011/10/31(月) 21:29:57.34 ] $ git tag としたらタグの一覧が出てきますが、そのタグがどのコミットにつけられたのか知るにはどうしたらいいですか。 今は .git/refs/tags のなかを覗いていますが、さすがに別の方法があるはず。 でも git tag -h してもそれらしいオプションはないし。困りました。
518 名前:デフォルトの名無しさん mailto:sage [2011/10/31(月) 21:42:56.10 ] git show タグ名
519 名前:デフォルトの名無しさん mailto:sage [2011/10/31(月) 21:43:06.65 ] ローカルのタグを git push --tags でサーバ側にpushしたのですが、 別のマシンで git pull origin master や git fetch をしても、 .git/refs/tags が空のままで困ってます。 しかも、なぜが git tag すると、pushしたタグ名が表示されます (.git/refs/tagsが空なのになぜ?) サーバ側にpushしたタグ名を、別のマシンにfetchしてくるにはどうしたらいいですか。
520 名前:デフォルトの名無しさん mailto:sage [2011/10/31(月) 21:53:51.18 ] >>518 それはコミットとかのオブジェクトの中身を表示するコマンドですよね。 たしかにコミットIDも表示に含まれてますが、タグ名とコミットIDの一覧が表示できればそれでよくて、ファイルの中身とかは必要ないです。 ちょうど hg tags のように表示されればいいだけなんですけど、難しいでしょうか。
521 名前:デフォルトの名無しさん mailto:sage [2011/10/31(月) 22:51:30.70 ] gitlab 試したヤシいる? gitorious と比べてどうよ
522 名前:デフォルトの名無しさん mailto:sage [2011/10/31(月) 23:09:06.91 ] >>517 タグだけ列挙する方法は俺も知らんので git-pack-refs して .git/packed-refs をかっさばけw 本末転倒だが git log --format='%H %d' >>519 .git/packed-refs ができてないかどうかチェキ
523 名前:デフォルトの名無しさん mailto:sage [2011/10/31(月) 23:11:24.52 ] つか、 GITDIR/refs/tags の一蘭をふつうに得る。 GITDIR/packed-refs の中身をかっさばく べたにやっていいんではないかと。refs/tagsの方が優先な。
524 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 10:28:11.94 ] >>517 g log --decorate |grep "[ (]tag: " じゃダメ?
525 名前:524 mailto:sage [2011/11/01(火) 10:31:19.82 ] あ、"g" は "git" ね 自分のalias書いちゃった
526 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 10:37:26.84 ] 気にするな 俺もalias g=gitしてるw
527 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 10:52:38.06 ] refs の中覗くのも、 git log --decorate=full |grep "[ (]refs/" でできるしね
528 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 11:15:25.18 ] >>527 これいいな タグと各ブランチのHEADだけ一覧できる
529 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 15:56:50.07 ] 貴様ら git-show-ref を忘れてるだろ!!!
530 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 17:12:34.96 ] >>529 マジで忘れてたw つかコマンドとオプション多すぎなくない?
531 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 17:36:04.12 ] >>529 -d つけないとタグとコミットの対応わかんないし、どっちにしろ同じコミットでも 全部別々の行になっちゃうから、>>527 のほうが俺は見やすいな
532 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 18:23:18.58 ] A-B-C \-D D の親は B になっているのを A-B-C \-D 親を C に変えるのは rebase D で行けるけど これの逆に親が C だったのを B にするにはどうすればいい?
533 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 18:52:52.64 ] >>532 git rebase --onto B C D
534 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 22:56:08.88 ] コマンド体系まで二重管理
535 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 23:03:32.33 ] 二重じゃないよplumbing porcelain cogit stgit tortoisegit もちろんネタです
536 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 23:14:15.39 ] >>531 tagってtag objectのことだったのか。 --dereference で何が困るんだ?
537 名前:デフォルトの名無しさん mailto:sage [2011/11/02(水) 14:55:42.99 ] git diffの結果を、ファイルか変更箇所ごとにマージするにはどうしたらいいんだろうか。
538 名前:デフォルトの名無しさん [2011/11/02(水) 20:48:46.59 ] >>537 ファイルごとにaddしてcommitしてマージすればいいんじゃないの?違う?
539 名前:デフォルトの名無しさん [2011/11/02(水) 21:16:28.81 ] patch当てたあとadd -pかね。
540 名前:デフォルトの名無しさん mailto:sage [2011/11/03(木) 07:10:13.88 ] >>521 コレ読んでここでなんか話題が出てないかと思って来てみたけど あなたしかレスしていないね www.moongift.jp/2011/11/20111101-2/
541 名前:デフォルトの名無しさん mailto:sage [2011/11/05(土) 18:24:22.73 ] Andoridアプリ開発しようと思ってeclipse落としたら なんか最初からgit入ってるし いつの間にかgitが主流になってきてるじゃねえか まじやべえgitこわいよー
542 名前:デフォルトの名無しさん mailto:sage [2011/11/05(土) 21:29:13.01 ] お前も二重管理の苦しみを味わうがよいw
543 名前:デフォルトの名無しさん [2011/11/05(土) 22:05:47.33 ] eclipse, egit, jgit, cygwin, msysgit, tortoisegitの6重管理
544 名前:デフォルトの名無しさん [2011/11/05(土) 22:10:46.58 ] ふらふらするな ぎっとしろ。
545 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 05:23:22.52 ] gitでも高性能な機能を使わなかったら一重管理できるよね。 俺はブランチも切らずただひたすらcommit -allしてるだけだし。
546 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 08:59:10.87 ] 高性能な機能と単純な機能の二重管理()笑
547 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 14:20:27.66 ] 二重管理言いたいだけなんじゃないかと・・・。
548 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 15:19:13.05 ] 何を今更
549 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 19:24:51.23 ] eclipseにデフォルトでcvsとgitは入ってるんだけどsvnは入ってないんだよね svnってオープンソース界から嫌われてるの?
550 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 19:30:21.87 ] svnはコミット権を持つ者が支配層だからね。 そんな時代は終わりにしたいのさ。
551 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 20:44:28.91 ] ぎっとなの?じっとなの?
552 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 20:53:37.61 ] ぎっと、が一応正しい 「じっとはぶ」と読んでる人が大多数だと思うのだが、あれは「ぎっとはぶ」が正しい
553 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 21:00:54.00 ] >「じっとはぶ」と読んでる人が大多数 それはない
554 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 21:07:00.25 ] >>551 ejje.weblio.jp/content/git
555 名前:デフォルトの名無しさん [2011/11/07(月) 21:27:45.63 ] github は、周囲では ぎっはぶ (トが落ちる)が多いなぁ。 全く知らなかったら ぎさぶ (thの発音で)と読んでしまいそう。
556 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 21:31:13.92 ] git 音節git 発音記号/git/ 【名詞】【可算名詞】 《英俗》 ばか者,ろくでなし.
557 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 21:49:47.47 ] じっとだろ
558 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 21:51:54.91 ] ギトって読んでるなぁ。GitHubはギトハブって・・・。
559 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 22:23:23.30 ] ギットでギットハブの俺にとってはこの流れがカルチャーショックなのだった。
560 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 22:23:39.37 ] おまいらもういいから じっとしてなさい
561 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 22:37:11.41 ] git logだと増減したファイルのファイル名や修正されたファイルのファイル名が出ないのですが、 これを見るにはどうすればいいでしょうか?
562 名前:デフォルトの名無しさん [2011/11/07(月) 22:42:58.04 ] git log --name-status かな。
563 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 23:05:44.39 ] まずは短めに --stat だな。
564 名前:デフォルトの名無しさん mailto:sage [2011/11/08(火) 08:54:59.15 ] 俺はwhatchangedよく使うな
565 名前:デフォルトの名無しさん mailto:sage [2011/11/08(火) 10:33:50.10 ] 特定のコミットに存在しないファイルを自動で消す方法ってないですか? 例えば linux kernel で v3.0.8 をコンパイルした後に git checkout v2.6.32.46 とかした時に、v2.6.32.46に含まれない余分なファイル を簡単に消す方法が知りたいです。
566 名前:デフォルトの名無しさん mailto:sage [2011/11/08(火) 11:25:52.93 ] >>565 わかんないけど rm -r * git checkout v2.6.32.46 とか?
567 名前:デフォルトの名無しさん mailto:sage [2011/11/08(火) 11:35:57.00 ] >>565 git clean -f でなくて?
568 名前:デフォルトの名無しさん mailto:sage [2011/11/08(火) 14:57:35.42 ] おれは心の中では、ギラハブ
569 名前:デフォルトの名無しさん mailto:sage [2011/11/08(火) 15:03:09.65 ] >>567 うお、それそれ。これが見つかんなくて、>>566 と同じ事してて、 kernel treeだと、3万ファイル以上 checkout するんで 遅くて嫌になってたのよ。 助かったよ、ありがとう。 でも、>>530 じゃないけど、コマンドとオプション多すぎっつか、 逆引き git マニュアルとか欲しいよね。
570 名前:デフォルトの名無しさん mailto:sage [2011/11/08(火) 15:13:36.72 ] ありゃ、ちょっと興奮して言葉遣いが荒くなってしまいました。 >>567 の回答で助かりました。ありがとうございます。
571 名前:デフォルトの名無しさん mailto:sage [2011/11/08(火) 19:39:46.04 ] git cheat sheet でぐぐって和訳して首吊って生き返れこんちくしょう
572 名前:デフォルトの名無しさん mailto:sage [2011/11/08(火) 19:52:27.14 ] 無罪!
573 名前:デフォルトの名無しさん mailto:sage [2011/11/09(水) 07:47:05.98 ] addで追跡を開始したファイルの追跡をやめるにはどうすればいいでしょう。 ファイルを削除することなしで。
574 名前:デフォルトの名無しさん mailto:sage [2011/11/09(水) 07:49:07.55 ] あ。すいません。すでにcommitされていてindexの中だけでなくリポジトリにも記録されてしまっているファイル についての話です。
575 名前:デフォルトの名無しさん mailto:sage [2011/11/09(水) 08:35:56.81 ] git rm --cached
576 名前:デフォルトの名無しさん mailto:sage [2011/11/09(水) 12:31:18.15 ] gitむずい 新しいブランチを作ってリモートリポジトリに登録するには、これでいいの? ## ローカルブランチを作成 git co -b newbranch ## リモートブランチを作成 git push origin newbranch ## ローカルブランチとリモートブランチをひもづける cat > .git/config [branch "newbranch"] remote = origin merge = refs/heads/newbranch ^D だれか助けて
577 名前:デフォルトの名無しさん mailto:sage [2011/11/09(水) 18:37:44.12 ] >>576 git push -u origin newbranch
578 名前:デフォルトの名無しさん mailto:sage [2011/11/09(水) 20:32:13.01 ] >>576 2重管理地獄で悶えて死ねwwww
579 名前:デフォルトの名無しさん mailto:sage [2011/11/09(水) 20:33:36.22 ] MAJIRESU 多重管理できないSVN厨は trunk を物故わしてばっかり
580 名前:デフォルトの名無しさん [2011/11/09(水) 23:52:17.86 ] なにこれ
581 名前:デフォルトの名無しさん mailto:sage [2011/11/12(土) 22:47:10.16 ] svnみたいな集中型で、コミット権の無いリポジトリから改造版をつくろうとしたら 自分専用のリポジトリを使ってそこにソースコードをエクスポートして、改造版は別ブランチで管理するとか そういう2重管理地獄に陥る そうしてできた派生版リポジトリの変更を取り込もうとしたら またソレ用のブランチ作ってそこにソースコード入れて・・・と3重管理4重管理の地獄行き GitとかMercurialみたいな分散型なら自分用ブランチ作って、 本家の変更をマージ(リベース)するという形で管理できるのでより簡単 派生版の変更も同じようにマージできる
582 名前:デフォルトの名無しさん mailto:sage [2011/11/15(火) 02:15:18.39 ] ディレクトリやファイルがたくさん含まれている中で、ただ1つのファイルだけを追跡したいのだが、 毎回ステージされていないファイル一覧が出てきて嫌だ。 目的のただ1つだけのファイルの他は全て無視するようにするにはどうすればいいだろうか。
583 名前:デフォルトの名無しさん [2011/11/15(火) 02:20:00.42 ] .gitignoreに /* /.* !/追跡したいやつ 1・2行目で全部無視にして、!付けて除外。
584 名前:デフォルトの名無しさん mailto:sage [2011/11/15(火) 09:23:16.84 ] ありがとうございます。 .gitignoreファイルと、.git/info/excludeファイルはどのように使い分けていますか?
585 名前:デフォルトの名無しさん mailto:sage [2011/11/15(火) 20:50:17.52 ] Gitによるバージョン管理 2011/10 ssl.ohmsha.co.jp/cgi-bin/menu.cgi?ISBN=978-4-274-06864-5 実用Git 2010/02 ssl.ohmsha.co.jp/cgi-bin/menu.cgi?ISBN=978-4-87311-440-8 入門Git 2009/9 www.shuwasystem.co.jp/products/7980html/2380.html 入門git 2009/08 ssl.ohmsha.co.jp/cgi-bin/menu.cgi?ISBN=978-4-274-06767-9
586 名前:デフォルトの名無しさん mailto:sage [2011/11/15(火) 21:13:03.36 ] Gitによるバージョン管理は良い本だな 開発ストーリーに沿ってコマンドを紹介している章があって、理解しやすい
587 名前:デフォルトの名無しさん mailto:sage [2011/11/15(火) 21:17:40.67 ] また新しいのが出たのかw やっぱりみんな分かりにくいと思ってるんだよ