トップページtech
984コメント273KB

Git 6

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2013/05/21(火) 11:26:36.94
ソースコード管理を行う分散型バージョン管理システム、Gitについて語ろう。
Git - Fast Version Control System
http://git-scm.com/

◆関連サイト
Pro Git - Table of Contents
http://progit.org/book/ja/
Git入門
http://www8.atwiki.jp/git_jp/

◆前スレ
Git 5
http://toro.2ch.net/test/read.cgi/tech/1350144612/
0002デフォルトの名無しさん2013/05/21(火) 11:28:50.26
◆過去スレ
Git 4
http://toro.2ch.net/test/read.cgi/tech/1329234309/
Git 3
http://toro.2ch.net/test/read.cgi/tech/1310403238/
Git 2
http://hibari.2ch.net/test/read.cgi/tech/1284467898/
git スレッド [Linux板]
http://hibari.2ch.net/test/read.cgi/linux/1197798039/

◆関連スレ
バージョン管理システムについて語るスレ9
http://toro.2ch.net/test/read.cgi/tech/1334766732/
CVS導入スレ〜 Rev.3
http://toro.2ch.net/test/read.cgi/tech/1113141518/
Subversion r14
http://toro.2ch.net/test/read.cgi/tech/1326806859/
【分散型バージョン管理】 Mercurial 2【hg】
http://toro.2ch.net/test/read.cgi/tech/1321109748/
【bzr】Bazaarでバージョン管理 Rev 4
http://toro.2ch.net/test/read.cgi/tech/1356521407/

◆関連スレ 別板
CVS 1.3 [UNIX板]
http://toro.2ch.net/test/read.cgi/unix/1093611448/
subversion バージョン管理【サブバージョン】 [Linux板]
http://engawa.2ch.net/test/read.cgi/linux/1154701996/
0003デフォルトの名無しさん2013/05/21(火) 11:29:24.67
◆関連書籍
Gitによるバージョン管理
2011/10
http://ssl.ohmsha.co.jp/cgi-bin/menu.cgi?ISBN=978-4-274-06864-5

実用Git
2010/02
http://ssl.ohmsha.co.jp/cgi-bin/menu.cgi?ISBN=978-4-87311-440-8

入門Git
2009/9
http://www.shuwasystem.co.jp/products/7980html/2380.html

入門git
2009/08
http://ssl.ohmsha.co.jp/cgi-bin/menu.cgi?ISBN=978-4-274-06767-9
0004デフォルトの名無しさん2013/05/21(火) 17:47:18.33
      ____∩_∩
  〜/        ・ ・\
   (          ∀   )  <ぼく、4ゲット君
    \/\/\/\/
0005デフォルトの名無しさん2013/05/21(火) 18:00:42.14
      ____∩_∩
  〜/        ・ ・\
   (          ∀   )  <あたち、5ゲットちゃん
    \/\/\/\/
0006デフォルトの名無しさん2013/05/21(火) 18:24:42.86
どこが違うんだw
0007デフォルトの名無しさん2013/05/21(火) 20:27:27.03
>>3
書籍じゃないけど参考になるのでぺたり

http://git-scm.com/book/ja
0008デフォルトの名無しさん2013/05/21(火) 20:45:57.85
>>7
すばらしい
>>1に書いておくべき
0009デフォルトの名無しさん2013/05/21(火) 20:49:06.05
すでに書いてある。URLが変わっただけ。
0010デフォルトの名無しさん2013/05/22(水) 23:55:31.37
gif←ジフ
git←ジット
0011デフォルトの名無しさん2013/05/23(木) 00:11:42.22
cogito←コギト
git←ギット
0012デフォルトの名無しさん2013/05/30(木) 08:03:12.77
http://itpro.nikkeibp.co.jp/article/NEWS/20130529/480625/
0013デフォルトの名無しさん2013/05/30(木) 08:19:51.93
>>12
>年収は必須です。

わろす
0014デフォルトの名無しさん2013/05/30(木) 08:31:20.23
Q. Pull Requests、Forkなどの機能はありますか?

A. 申し訳ありません現在は実装しておりません。
    作ってる本人も欲しい機能なので結構早く実装されるとおもいます。

Q. Gitサーバーにsshでアクセスすることは可能ですか?

A. 申し訳ありません現在HTTPSのみ対応しております。
    開発チームがそれなりにがんばっているので、それなりな時期に対応できるとおもいます。
    俺が実装してやるぜ!という奇特な方はこちらからご応募ください。
http://www.bizreach.co.jp/recruit/

ふ〜ん。
0015デフォルトの名無しさん2013/05/30(木) 12:45:19.64
また画面丸パクリだったりするのかな
0016デフォルトの名無しさん2013/05/30(木) 12:59:51.25
これはひどい
0017デフォルトの名無しさん2013/05/30(木) 19:48:48.10
誰かが負荷かけて潰すだろうな
0018デフォルトの名無しさん2013/05/31(金) 00:30:01.42
>>14
スクロールして一瞬びびった。グロ画像かと思ったじゃねーか。
0019デフォルトの名無しさん2013/06/01(土) 17:19:55.26
CVSユーザーです。gitの場合CVSのモジュール一つにつき
一つのリポジトリを用意する必要があるという認識で良いですか?
0020デフォルトの名無しさん2013/06/01(土) 18:07:22.36
gitを学ぶならCVSのことは全部忘れた方がいいと思うよ
0021デフォルトの名無しさん2013/06/01(土) 18:56:33.22
いや、忘れる必要は無いだろ。技術者として。
0022デフォルトの名無しさん2013/06/01(土) 19:00:09.51
そういう意味で言ってるんじゃないと思うぞ・・・
0023デフォルトの名無しさん2013/06/01(土) 19:01:44.47
あんな男のことはもう忘れて俺だけを見ろ って意味か
0024192013/06/01(土) 20:14:48.96
>>20
比較しながら違いを見ていかないと覚えられない性格でなんす。

知っているなら意地悪しないで教えていただけなせんか?
0025デフォルトの名無しさん2013/06/01(土) 20:30:01.74
管理方針によっても変わりますが、CVSのモジュールにひとつに対して、
Gitではひとつのベアリポジトリと複数のリポジトリを作ることになると思われます
0026192013/06/01(土) 21:08:46.73
>>25
ありがとうございます。

ベアリポジトリというのが、CVSのトランク
ただのリポジトリというのがCVSのブランチ
にあたるものですよね?
0027デフォルトの名無しさん2013/06/01(土) 22:05:18.89
根本的に違う
入門記事とかそこらじゅうにあるんだから
ちょっとは自分で調べろよ
0028192013/06/01(土) 22:14:03.46
>>27
きちんと理解できてないかもしれませんが、入門記事は読んでます。

お手間をかけて申し訳ございませんが、どう根本的に違うのか教えていただけないでしょうか。
0029デフォルトの名無しさん2013/06/01(土) 22:17:23.53
>>27
機能的な意味では確かに全く違うが、
運用的な側面で比較するなら妥当な気もする
0030デフォルトの名無しさん2013/06/01(土) 22:19:07.12
根本的に違うものが比較できるかよ。
事実がどうかは別として、根本的に違うと理解してる奴に聞くことじゃない。
悪意があるようにしか思えん。
0031デフォルトの名無しさん2013/06/01(土) 22:30:21.42
そもそもCVS流儀の使い方をするならgit使う必要ないだろ
CVSが流石に古くなってきたって程度の理由ならsvnにしとけ

仕事で自分の意思でなくgitに移行することになったんなら
こんなところで質問すんな
誰か犠牲者がでる
0032デフォルトの名無しさん2013/06/01(土) 22:37:48.33
>>30
横やりだが、上のやり取りを見て一言。

俺はCVS→SVN→GITとの流れで使ってきた人間だが
>>26の言いたいことはわかるし、>>27の根本的に違うという発言も理解出来る。

>>26
多分、あなたの考えで問題ない(だろう)よ。
0033デフォルトの名無しさん2013/06/01(土) 22:58:25.48
>>19
そういうことだな。
一部だけのチェックアウトができないから未だにcvsで運用しているレポジトリがあるわ。
0034デフォルトの名無しさん2013/06/01(土) 23:37:07.37
>>24
CVSはどうやって覚えたんだ?
CVSを知らなかったときのことを思い出せ。
0035デフォルトの名無しさん2013/06/02(日) 00:07:24.71
>>34
一度覚えたら、その比較でしか覚えられないだろ?
日本人に日本語を覚えた時のように英語を覚えろと言っても無理だろ?
0036デフォルトの名無しさん2013/06/02(日) 00:43:58.44
どうだろ
母国語以外で比較しないと意味ないな
既に英語を知ってる人が
フランス語を覚える時は
英語を忘れた方が良くね?
0037デフォルトの名無しさん2013/06/02(日) 03:25:37.22
>>36
そんなことはないだろ。

話をプログラムミング言語に移すと
Java使いがC#覚える時は大抵比較的で覚えるだろ

そうでないと非効率だ
0038デフォルトの名無しさん2013/06/02(日) 03:28:44.09
他の言語を覚えるのはまた1から始まりじゃないからな
共通して利用できる部分は多々ある
0039デフォルトの名無しさん2013/06/02(日) 03:46:02.28
>>37
C#は、ほとんどJavaのパクリじゃないか。
0040デフォルトの名無しさん2013/06/02(日) 11:38:21.03
>>19
合ってる。
gitはリポジトリの一部をチェックアウトできないので、
CVSのモジュールごとにリポジトリを作る必要がある。

>>26
違う。ベアリポジトリは集中管理用のリポジトリ。

CVSのチェックアウトに一番近い概念はgitではリポジトリのクローン。
みんなが参照する中央のリポジトリがベアリポジトリ、
それをクローンして各自が作業に使うのがノンベアリポジトリ。
0041デフォルトの名無しさん2013/06/05(水) 20:04:03.61
>>12
返事キター

(●●) 様
 
はじめまして。
株式会社ビズリーチCTOの△◎◇と申します。
 
この度はコードブレイクにご登録いただきまして、
誠にありがとうございます。
 
ご挨拶といたしまして、私たちが「コードブレイク」を始めた理由と
機能についてお話させてください。
 
■コードブレイクを始めた理由
 
私はITエンジニアなどのIT・Webエンジニアが
正当に評価されていないことに古くから疑問を持っていました。
 
高度な技術を持つIT・Webスペシャリストは、世界中で重宝される存在です。
しかし日本においては、必ずしもその通りではなく、評価されるべき人材が、
正当な評価とそれに見合う報酬を受け取っているとは言い切れません。
 
優秀なIT・Webエンジニアが
自分の市場価値を正しく把握することで、
もっともふさわしい仕事とそれに見合う報酬を受け取ってほしい。
「codebreak;(コードブレイク)」は、そんな想いから作ったサービスです。
サービス名には、IT・Webエンジニアの周りを取り巻いていた、
不必要な「規約、規則=code」を「壊す、打ち破る=break」という想いを込めています。

■コードブレイクの機能
以下略
0042デフォルトの名無しさん2013/06/05(水) 20:19:40.68
Webエンジニアなんてプログラマーの中でも底辺じゃん
0043デフォルトの名無しさん2013/06/05(水) 23:58:44.11
>>42
昔から「士農工商犬プログラマ」と言うように
そもそもからプログラマーが底辺なんだから、
底辺の中で上下を決めた所でしょうもない
0044デフォルトの名無しさん2013/06/06(木) 11:24:50.99
Gitのリベースとは、SVNで言うところの
「機能ブランチの再統合マージ」のことですよね?
0045デフォルトの名無しさん2013/06/06(木) 11:46:23.53
Gitのリベースはブランチをマージするとかじゃない場合も使える
ひとつのブランチ上でコミットの順番を入れ替えるとかもリベース
0046デフォルトの名無しさん2013/06/06(木) 11:57:33.66
コミットログの編集、削除やらも git rebase やな
0047デフォルトの名無しさん2013/06/06(木) 12:19:05.74
リポジトリ内に既にあるものを変更するからって何でもかんでもrebaseに押し込めすぎ
0048デフォルトの名無しさん2013/06/06(木) 13:15:36.02
コミットが何なのかを理解すれば、その何でもかんでもと思ってることが
rebaseひとつで済む理由を理解できる。
0049デフォルトの名無しさん2013/06/06(木) 13:38:19.05
で、そういうオペレーションをrebaseって言葉で表現するの?
0050デフォルトの名無しさん2013/06/06(木) 13:46:18.50
覚えるの面倒だから全部rebaseでいい
0051デフォルトの名無しさん2013/06/06(木) 16:59:54.41
だがブランチ切り替えをcheckoutにしたのは異論あり
0052デフォルトの名無しさん2013/06/06(木) 17:07:26.93
ファイルを指定したときとブランチ名指定したときで全く違う機能持ってるのはよくないな
0053デフォルトの名無しさん2013/06/06(木) 17:22:38.93
rebaseと比較の上で考えると全く違うってほどでもない。
0054デフォルトの名無しさん2013/06/06(木) 17:29:31.17
ファイル指定の時にワークのファイル保護さえしてくれれば良い気がした。
なんであそこだけノーガードなんだろ?
0055デフォルトの名無しさん2013/06/06(木) 17:42:26.53
いやいやcheckoutのそれはまったく違うぞw
それに比べたらrebaseがやることは常に一緒。
0056デフォルトの名無しさん2013/06/06(木) 22:09:52.71
gitのuiは飾りです。偉い人にはそれが分からんのですよ。

従来のSCMとは概念から違うのに、既存のSCMと無理矢理コマンド合せようとしたから破綻してる。
0057デフォルトの名無しさん2013/06/07(金) 08:07:39.73
UIが内部的な処理に引き擦られてしまっているだけ
ボトムアップな作り方だからそうなったというだけ
0058デフォルトの名無しさん2013/06/07(金) 08:49:15.24
つまり、片手を鼻くそほじるためにあけるためだけのものではなく、
gitの概念をきちんと理解した上での新しい憂を作れと。
0059デフォルトの名無しさん2013/06/07(金) 11:25:19.35
-リモートとローカルのマージ
-メインブランチとトピックブランチのマージ

上記は全く違うものだと思うのですが、
皆さんは両方ともマージと呼んで混乱しないんですか?
0060デフォルトの名無しさん2013/06/07(金) 11:49:15.77
FFマージと非FFマージとFF状態での非FF形式のマージ。
非FF状態でFF形式のマージはできない。
このぐらいしか意識してない。
0061デフォルトの名無しさん2013/06/07(金) 15:48:26.96
〜と〜のマージと呼ぶ方が混乱する。
〜から〜へのマージと呼んでもらえば、何を対象にしてても同じ
0062デフォルトの名無しさん2013/06/07(金) 16:09:33.23
VisualSVNServer的なWindows上に簡単に
インストール出来るgitサーバーパッケージ
って無いんですか?
0063デフォルトの名無しさん2013/06/07(金) 16:47:33.66
repoの話題はここでいいんかな

複数のgitリポジトリを包含したrepoで、新規にtopicブランチをつくりたいです。

$ repo start topic --all
みたいにするとtopicブランチは出来上がるんだけど、ブランチ元がずいぶん昔の
バージョンになってしまう。
現在 $repo status とかで見えているカレントのブランチから派生させたいんだけど
どうやったらよいですか?
0064デフォルトの名無しさん2013/06/07(金) 23:02:39.65
>>59
>-リモートとローカルのマージ
gitの場合はこれが無い
存在するのはリモートと関連付けられたローカルとのマージのみ
ローカルとリモートを同期させるかは別問題
0065デフォルトの名無しさん2013/06/10(月) 12:06:58.48
git-svnの利用に関して質問です。

Subversionの場合、よく一つのリポジトリで複数のexeやlibを
管理することが多いです。そんな場合でもgit-svnは利用できますか?
0066デフォルトの名無しさん2013/06/10(月) 12:09:27.77
>>65
そのような用途には若干不向きです
0067デフォルトの名無しさん2013/06/10(月) 12:18:46.68
>>66
不可能だと思って聞いたんですが、「不向き」とおっしゃるということは
可能ということですか?


<追加質問>
もし、1リポジトリ=1exeが保証されているとして、
リモートリポジトリをSVNである場合の不利な点って何が有りますか?
0068デフォルトの名無しさん2013/06/10(月) 12:46:46.02
そりゃ全部いっしょくたにすりゃ可能は可能だろw
0069デフォルトの名無しさん2013/06/10(月) 13:00:36.05
>>65
バイナリも管理(リポジトリに登録)できるか、という意味であればできる。
0070デフォルトの名無しさん2013/06/10(月) 13:03:06.73
>>67
中央管理だからサーバーが死んだら終わりってくらい?
0071デフォルトの名無しさん2013/06/10(月) 13:20:07.94
>>69
バイナリ管理は出来るのは大前提であり、
1リポジトリ=1exeが守れなくてもgit-svnで運用できるかという
ことを私は聞きたかったのですが…。
0072デフォルトの名無しさん2013/06/10(月) 13:21:04.71
>>70
ネットワーク速度的やCPU処理速度的な
デメリットは特にないということですか?
0073デフォルトの名無しさん2013/06/10(月) 13:31:08.72
速度はハード性能を上げれば済む話

機能的な差が無いかが気になる
0074デフォルトの名無しさん2013/06/10(月) 13:41:00.07
>>71
出来る出来ないで言えば出来る
と言っておろう
0075デフォルトの名無しさん2013/06/10(月) 13:47:43.49
画像大量にブチ込むとかやってる人居ない?
0076デフォルトの名無しさん2013/06/10(月) 14:24:31.47
>>74
その出来るという運用方法を教えていただけないでしょうか。
0077デフォルトの名無しさん2013/06/10(月) 15:00:40.33
77
0078デフォルトの名無しさん2013/06/10(月) 15:05:22.76
>>74
出来ないなら出来ないと認めればいいのに orz
突っ込む方も突っ込む方だが…
0079デフォルトの名無しさん2013/06/10(月) 16:54:55.00
そもそも何が出来ないと思ってるか不明。不便を許容したら大抵のことは可能の範疇にはいるだろ?
なんとかして運用方法を知りたいというよりも、なんとかして不可能という言質を引き出したいように見える。
git-svnはsubversionリポジトリのサブディレクトリと関連付られるんだから、製品それぞれを別のリモート名にすりゃ良いんじゃないの?
0080デフォルトの名無しさん2013/06/10(月) 17:10:56.30
たくさんのexeファイルを含むSVNのリポジトリをgit-svnで管理できるか?ってことだよね
できるんじゃないの?
exeファイルの数やサイズや更新頻度によっては実用にならない可能性はあるけど
それは知らんから、試してみてくれ
0081デフォルトの名無しさん2013/06/10(月) 17:37:09.40
>>79の冷静な対応に感動した
0082デフォルトの名無しさん2013/06/19(水) 12:28:36.82ID:QJZyPKVo!
git clone githubでクローンしたいプロジェクトのurl

cloneした状態でgit logをすると 元のプロジェクトの人が貯めてきたログが残っています。
こういうのってcloneした後に.gitディレクトリを消してからgit initってしてリポジトリを作るものでしょうか?
それともこのcloneしてそのままaddとかcommitをしていくべきでしょうか?
0083デフォルトの名無しさん2013/06/19(水) 12:48:24.23
githubでクローンしたいプロジェクトを
自分のプロジェクトに fork してから
git clone 自分のプロジェクトのurl
0084デフォルトの名無しさん2013/06/19(水) 14:22:11.09
>>75
広告デザインとか、ウェブサイトのデザインで使うときには、材料を全部入れる。
Macのgitブラウザは、よく使うフォーマットの画像がプレビューできるので
画像のdiffもバイナリdiffじゃなく、プレビューで見られるので便利。
0085デフォルトの名無しさん2013/06/21(金) 01:48:02.01
LinuxでGUIからgit使うのにお勧めツールないでしょうか
redmineみたいな感じでチケット管理もできると最高なのですが
0086デフォルトの名無しさん2013/06/21(金) 12:06:38.55
まるでWindowsにならあるような書き方ですが
もちろんWindows版にもありません。
0087デフォルトの名無しさん2013/06/21(金) 14:35:22.19
Windowsの方はVisualStudioがgitのネイティブサポートを始めたよね。まだβっぽいけど。
0088デフォルトの名無しさん2013/06/21(金) 14:47:18.57
チケット管理が無いとダメなら
giteyeとかsoucetreeみたいな普通のクライアントじゃ無理なんじゃ?
0089デフォルトの名無しさん2013/06/21(金) 21:35:05.74
コマンドラインで使うのが一番便利だと思うのだけどなあ。
0090デフォルトの名無しさん2013/06/22(土) 17:26:20.54
全体をだらだら眺めるような時はtigとか使うのも便利だと思うよ
0091デフォルトの名無しさん2013/06/22(土) 22:47:56.90
tig試しに使って見たことはあるのだけど、結局、logformatに%dの出力足せばすむ話だし。
差分もvim -R -食わせちゃった方がなれていることもあって不便はかんじないんだよなぁ
そもそも、git guiとかgtk一応はいってるてのもある。
Xming知ってから世界はかわった(笑)

コンフリクトした時、meld使うくらい?
ってことで、rebaseできるものでもなければguiあんま必要ない。
っていうか、rebaseのできるguiってありそうでないよね。
0092デフォルトの名無しさん2013/06/23(日) 13:54:29.47
SourceTreeは普通のrebaseもインタラクティブrebaseもできる
それだけでは細かくコミット編集するのにはまだ不便だが
普通に使うのには十分だと思う
0093デフォルトの名無しさん2013/06/23(日) 16:05:10.37
おお、それは朗報。後で少し調べてみよう。
rebaseって、tagやbranchため込んでると手間が増えて手でやるの面倒だったんだ。
branchからbranchつくってるやつとか。

それとも、tagはpushする直前につけて、branchはmergeしたあとはすぐ削除したほうがいいのかな?
0094デフォルトの名無しさん2013/06/26(水) 04:02:08.36
$git --init
$touch ticket.org
でemacs使った簡易Redmineもどきできるな
0095デフォルトの名無しさん2013/06/27(木) 14:52:50.50
gitweb ってブランチの表示機能が無いのか〜
結構良いデキなのに、惜しいなぁ
0096デフォルトの名無しさん2013/06/30(日) 15:54:27.81
複数のbranchがあるリポジトリで、リモートのすべてのbranchの変更点をローカルに反映
させたい場合、checkout/pullを全branchについて実行するより簡単な方法ってありますか?
0097デフォルトの名無しさん2013/06/30(日) 18:08:50.32
ブランチ未指定でプルプルすればいいんじゃないの?
0098デフォルトの名無しさん2013/06/30(日) 18:18:27.87
すいません、プルプルってなんです?
0099デフォルトの名無しさん2013/06/30(日) 18:19:41.48
How to fetch all git branches - Stack Overflow
http://stackoverflow.com/questions/10312521/how-to-fetch-all-git-branches
0100デフォルトの名無しさん2013/07/03(水) NY:AN:NY.AN
なんかgithubおもくね?
0101デフォルトの名無しさん2013/07/05(金) NY:AN:NY.AN
儲からなくてもいいんだってさ。

和製GitHubの「gitBREAK」は「儲からなくてもいい」
ttp://www.atmarkit.co.jp/ait/articles/1307/03/news002.html
■ このスレッドは過去ログ倉庫に格納されています