トップページ⇒linux
984コメント325KB

git スレッド

■ このスレッドは過去ログ倉庫に格納されています
0001login:Penguin2007/12/16(日) 18:40:39ID:GslAi8rs
ソースコード管理を行うバージョン管理システム、git について語ろう。

あの、リーナス・トーバルズだって、バージョン管理を始めたんだ。
http://www.kernel.org/pub/software/scm/git/

git チュートリアル (バージョン 1.5.1 以降用)
http://www8.atwiki.jp/git_jp/pub/Documentation.ja/tutorial.html
0175login:Penguin2008/12/20(土) 20:34:52ID:D7NqFLzp
add .
commit -a
でいいのかな?
0176login:Penguin2008/12/25(木) 17:46:05ID:waBObvDn
1.6.1キタ━━━(゚∀゚)━( ゚∀)━(  ゚)━(  )━(  )━(゚  )━(∀゚ )━(゚∀゚)━━━!!
0177login:Penguin2008/12/25(木) 20:41:00ID:Lvzi1Kt9
>>176
ほんとだ。
http://git.or.cz/ にはまだ出てないけど、Tagは昨日打たれてるんだね。
さっそくビルドしてみよっと。
0178login:Penguin2008/12/25(木) 21:51:01ID:xGFcU4xY
クリスマスプレゼントきてたか。
俺もビルドしてIYH!!
0179login:Penguin2008/12/28(日) 10:56:17ID:M6Jmnnag
は?
0180login:Penguin2009/01/07(水) 13:35:45ID:yljPTwi+
どーもくんwwwww
0181login:Penguin2009/01/07(水) 22:12:42ID:w9oQRMMI
そういやGit、ドーモくんパクってるな。
なんかみたことあるなーとは思てたけど。
0182login:Penguin2009/01/08(木) 00:35:09ID:Lnbl1Hh0
きっと、ライセンス問題に業を煮やしたリーナスが
新キャラクタを一から作り始めると見た
0183login:Penguin2009/01/08(木) 18:22:06ID:ZbvVG/Dm
で新キャラのライセンスもGPLなんかな。
世界中で使われまくりんぐ
0184login:Penguin2009/01/08(木) 21:38:12ID:+tvvOsmO
とりあえず年末にやっていたどーもくんテレビシリーズは面白かった。
0185login:Penguin2009/01/12(月) 21:00:52ID:WcSLRQ7m
git-cloneをしてもエラーが出てできません。どなたかお助けください。

環境
Ubuntu_1 こいつに"mysite"リポジトリがある(git init で作ったリポジトリ)
Ubuntu_2 こいつにgit-cloneをさせたい

Ubuntu_02でコマンド
:git clone ssh://name@Ubuntu_01/home/name/git/mysite/

で結果がこうなる
remote: Counting objects: 366, done.
remote: Compressing objects: 100% (150/150), done.
remote: Total 366 (delta 262), reused 296 (delta 213)
Receiving objects: 100% (366/366), 53.82 KiB, done.
Resolving deltas: 100% (262/262), done.
error: Trying to write ref HEAD with nonexistant object 73f8...(省略)
fatal: Cannot update the ref 'HEAD'.

このようなエラーが出て、mysiteフォルダが作成されませんでした。
Ubuntu_1のHEADのハッシュは73f8...です。

不思議なのが、nonexistant(nonexistentの間違い? 存在しない)といわれても、Ubuntu_1側でlogを見ても内容はあるように思えるのですが。謎です。
どなたか解決方法をご存知ありませんか。よろしくお願いします。
0186login:Penguin2009/01/12(月) 21:05:09ID:WcSLRQ7m
OSとgitのバージョンを書き忘れていました。すいません
Ubuntu_1(Ubuntu8.04.1) : git version 1.5.4.3
Ubuntu_2(Ubuntu8.10): git version 1.5.6.3

です。gitの最新では問題ないとか、そういうものなんでしょうか・・・
0187login:Penguin2009/01/12(月) 22:47:45ID:Uq2UYoFZ
--no-checkoutでやってみたらどうなる…?
0188login:Penguin2009/02/16(月) 23:10:31ID:YaLIe5U3
こないだネカフェで漫画読んでたら、隣の席の人がマック取り出してなんかやり始めた。
しばらくたってチラ見したら、Gitチートシート見ながら使い方勉強してるようだった。
emacsでメモ取りながら。
Railsのおかげか?マックの人にも浸透してきてんだねー
0189login:Penguin2009/02/17(火) 00:20:11ID:6D8Af0Ge
gitを使うような開発者がマックを選ぶようになったというほうが近いかと
0190login:Penguin2009/02/17(火) 00:51:17ID:ju3lrvVQ
そのおかげかどうか知らんが、Rubyの開発もsvnからgitに移行しろと
ぎゃーぎゃー騒ぐ連中がrubyのMLでノイズをまき散らしている(た)

0191login:Penguin2009/02/17(火) 01:50:48ID:p0vzD+Qg
まぁ、そうしょっちゅう変更されても困るけどな。

未だにCVS使ってるプロジェクトがあることを考えると、
まぁSVNへの移行はそれなりに適切だったよな。

すれ違いスマソ
0192login:Penguin2009/02/17(火) 21:51:55ID:mqqNODDH
最近人気のVCSって大体リポジトリの相互変換機能があるんで
svnだからどうとかgitだからどうとかってあまり問題ないん
じゃないかと思うんだけど... 騒いでるのって実際自分では開発
してる人なのかな?
0193login:Penguin2009/02/18(水) 02:42:16ID:/eQIK6gR
>>192
クライアントだけみても結構違いはあるよ

というか、むしろリポジトリ変換できるからどれでもいいだろと言う人の方が
自分で開発してるのか疑わしい
0194login:Penguin2009/02/18(水) 07:55:24ID:DFCGO0mb
>>189
漏れもmac使いだけど、多い日には8割ぐらいX11で作業してるなぁ
linux板で言うことじゃないけど、最強のunix osだと思ってる
0195login:Penguin2009/02/18(水) 08:09:04ID:m9oJRtIs
ギャグ?
目悪くなるよ、あれ。
0196login:Penguin2009/02/18(水) 11:17:34ID:83SU7AOt
macbook air使ってる人見たことあるけど、
パワポの起動に数十秒かかっててわろた。
0197login:Penguin2009/02/18(水) 12:43:10ID:/eQIK6gR
AirはAppleへのお布施だってばっちゃが言ってた
0198login:Penguin2009/02/18(水) 12:54:38ID:XFrEXlX0
Windowsは目に優しいのにな
0199login:Penguin2009/02/18(水) 19:20:17ID:d2HDJA0J
Windows -> MSゴシック代
OSX -> ヒラギノ代
0200login:Penguin2009/02/18(水) 23:34:07ID:0GUjr6IS
>>193
>クライアントだけみても結構違いはあるよ
違いがないとは書いてないよ。問題がないとは書いたけど。

>というか、むしろリポジトリ変換できるからどれでもいいだろと
>言う人の方が自分で開発してるのか疑わしい
なんでそこで「言う人の方が」とか出てくるんだろう...
リポジトリ変換の手段があれば普段の開発は最も自分に都合がよい
VCSを使える。プロジェクトのリポジトリを移行するのは単なる変換
以外のエネルギーが必要なんだよ(commitlogとかリポジトリのミラーとか
開発支援のためのスクリプトやドキュメントの修正とか)。その労力や
時間は開発にまわしたほうが合理的。
0201login:Penguin2009/02/19(木) 00:18:13ID:PdrPyNp0
>>200
相互変換つっても、git-svn使ってるけどかなり寂しい状態だからなぁ…
使ったことないけどhgやbzrとならいい感じにやり取り出来るんだろうか。
0202login:Penguin2009/02/19(木) 01:00:15ID:EG8D4dSl
git-svnはたまにclone中にSEGVることがあってちょっと困る。
どうも変換できないパターンが存在するらしいのだが、詳細が不明。
0203login:Penguin2009/02/19(木) 01:45:08ID:ytISsoJv
>>202
gentoo user なら、

Per Gentoo bugs #223747, #238586, when subversion is built
with USE=dso, there may be weird crashes in git-svn. You
have been warned.

って、message がデルよ。
0204login:Penguin2009/02/19(木) 07:31:39ID:EG8D4dSl
>>203
Debianだけど、もしかしたら同じかもしれない。豚々。
0205login:Penguin2009/02/21(土) 13:27:13ID:4lfOqpcB
git使いたいけどまわりにCVSしか使ったことないのがいるので、
まずはsvnに移行したよ。
自分自身は、git-svnつこてる。

CVSから一足飛びにgitを使ってもらうのは、酷かなと
0206login:Penguin2009/02/21(土) 13:39:00ID:yqrw3Axq
cvs を理解して使えてるなら、git ぐらいすぐに使えるようになると思うけど。
0207login:Penguin2009/02/21(土) 13:52:33ID:4lfOqpcB
そうか?
CVSは難しいからね。
A: CVS使い
B: CVS,SVN両使い
C: CVSは忘れたSVN使い、gitは少し

こんなメンバーで開発してるんだが、
A、Bにpush,pullを教える自身がなかったというか
Cも共同開発系操作は怪しかったので

svnになってしまった。ちょっとチキンだったか
0208login:Penguin2009/02/21(土) 15:02:07ID:Bpq3TsWG
gitをしばらく使ってみて、リモートリポジトリを用意することになりました。

ローカルA
ローカルB
リモートリポジトリ

とありまして、ローカルAにmaster、v0.1の二つのブランチがあります。

ローカルAからリモートには、push --allですべてのブランチをリモートにおきましたが、
ローカルBからリモートへのpullはmasterしか行えない気がしますが、どうなんでしょうか。
理想は、リモートを通してすべてのローカルリポジトリにブランチの共有を行いたいのですが、どんな操作方法があるでしょうか?
よろしくお願いします。
0209login:Penguin2009/02/21(土) 15:27:28ID:vsW8bIWn
>>208
話がいまいち飲み込めないんだけど、
そのリモートをcloneじゃダメなん?
0210login:Penguin2009/02/21(土) 17:17:05ID:Bpq3TsWG
>>209
ああそうか、cloneのことを忘れていました。ありがとうございます。
0211login:Penguin2009/02/21(土) 17:47:07ID:vsW8bIWn
>>210
cloneというか、git remote add でいつでもリモートの追加は可能だよ。
権限に問題がなければ、remoteにpushすることもできる。
0212login:Penguin2009/02/21(土) 21:53:30ID:Mctk+V93
cvsやsvnにはwindowsで使えるクライアントがあるから・・・
0213login:Penguin2009/02/21(土) 22:56:24ID:4lfOqpcB
全部emacsから使えるが何か?
0214login:Penguin2009/02/22(日) 00:56:10ID:T3tENWac
>>212
tortoisegitdozo-
0215login:Penguin2009/02/22(日) 03:05:15ID:Xj5AqDY8
>>207
ブランチの扱い考えると CVS な人は SVN より GIT の方が
なじみ易いんでは?
0216login:Penguin2009/02/22(日) 14:26:08ID:mBjWyYz+
確かにsvnはリビジョンがブランチも本流も共通だったり、
気持ちわるいところはある
0217login:Penguin2009/02/22(日) 15:03:08ID:1XxXXSjk
こないだ久々にCVS使おうとしたらさっぱりワケワカんなくなってたよ…
CVSのブランチってファイル毎じゃなかったっけ。今となってはもう無理な気がする。
0218login:Penguin2009/02/22(日) 19:13:59ID:8lvMl2P/
>>216
それがsubversionのいいところ。
たとえばあるブランチの開発がすすんでそっちを本流にしたくなった場合、
trunkにマージするという断絶ではなく
本流を切り替えるという操作がそのままできる。
0219login:Penguin2009/02/22(日) 23:21:39ID:mBjWyYz+
>>218
それ気持ち悪い
ブランチ担当者が1ファイル毎にcommitするとか、
コンパイルも通らないソースcommitしてくれたりして、
怪しいリビジョンが増えんだよね。svn

gitだったらブランチ替えるのもrebaseすれば
問題ない
0220login:Penguin2009/02/23(月) 01:45:32ID:7ybypk05
>>219
使い方が悪い場合にツールに文句付けても仕方ないな。
0221login:Penguin2009/02/23(月) 08:47:31ID:tJXsAqHt
>>218 のようなケースは分散型ではそれこそ
「本流にしたくなったブランチを本流とみなす」
だけになるのではなかろうか。
0222login:Penguin2009/02/23(月) 09:12:05ID:PfEahPoc
本来のmasterブランチを別名に改名して別のブランチをmasterに改名すればいんじゃね?
0223login:Penguin2009/02/23(月) 22:04:17ID:RXJ8Zkdl
すみません、教えてください。
git pull したときに、一部のファイルだけ、自分の修正を破棄してリモートのファイルをそのまま適用することは
できないのでしょうか?
SVNで、updateしてコンフリクトした時の tf みたいなイメージです。
0224login:Penguin2009/02/23(月) 22:33:08ID:Abtbk8hJ
git reset?
0225login:Penguin2009/02/23(月) 22:56:28ID:RXJ8Zkdl
あー、いや、そういうんじゃなくて、ソフトの翻訳をしていて、ja.poだけは自分で修正するんですが、
make update-poとかすると、他の言語のpoファイルも更新されてしまいます。
それやっちったあとにリモート側でpoファイルが更新されるとカオスになります。
なので、コンフリクトした時にマージとかしないで、リモート側(かローカル側かどっちか)を採用みたい
なのができないかなと。
0226login:Penguin2009/02/23(月) 23:31:25ID:3S3xpgxH
>>220
gitだったら、自分専用になるから他のブランチのcommitポリシー
関係なくなるじゃん。
まともになったらpullしてやんよと言うだけで、
教育する手間がいらんということだ。
0227login:Penguin2009/02/23(月) 23:47:39ID:qE2tArP5
>>223
git mergeのドキュメントを--strategyあたりでgrepすると良いと思う。
git pull = git fetch + git mergeね。
0228login:Penguin2009/02/24(火) 22:25:50ID:7lWKoCOb
>>225
>make update-poとかすると、他の言語のpoファイルも更新されてしまいます。
他の言語のpoファイルを更新しないようにMakefileを修正する。
0229login:Penguin2009/02/26(木) 21:09:00ID:c1Dg6ivC
>>223
http://gitready.com/advanced/2009/02/25/keep-either-file-in-merge-conflicts.html
タイムリーなtipsが
0230login:Penguin2009/02/28(土) 18:19:24ID:tKEdSpX5
>>223
もどしたいファイルはcheckoutすればいいだけじゃね?
あとは自分の修正はstashするとか色々
0231login:Penguin2009/03/04(水) 22:33:23ID:qIzLJZaT
FTPに1.6.2正式版来ました
0232login:Penguin2009/03/06(金) 23:57:38ID:op+ZMKgY
git-cloneとgit-remote addとgit-svnを使い分けてると

 このフォルダで更新するためのコマンドなんだっけ?

とミスることが多発するんだけど、こういうのって同じコマンドで
管理できないんでしょうか?今は

- git-clone の場合 -> git-pull で更新
- git-remote の場合 -> git-remote update で更新
- git-svn の場合 -> git-svn update で更新

とバラバラで、しかもlsしただけでは判定できないしで
誤実行しては.git/config調べて「ああそうだった」の連発です。

もしかしてもっと便利な統合コマンドがあったりするでしょうか?
0233login:Penguin2009/03/07(土) 01:39:30ID:ZWrd4H3R
それぞれ役割が違うだろうに。
あと更新とかじゃないよ。
0234login:Penguin2009/03/07(土) 08:32:02ID:ovs/dmRV
他の人のリポジトリからチェンジセットを引っ張ってくるために打つコマンドという
意味で同じように使っているのですが、もしかしてこの使い方・理解自体が
間違ってるんでしょうか?
0235login:Penguin2009/03/07(土) 09:38:44ID:u/rVLzU8
>>232
いずれの場合も更新のためのシェルスクリプトを書いとけば
悩む必要がなくなるよね。
でgit-pullはfetch+merge --ff、git-remote updateはgit fetchと
ほぼ同じなんで役割が違う。git-remote addで追加したremoteだと
git-pullで更新してくれない、というのであればそれはローカル
ブランチの設定が正しくできていない、refspecの設定が変、とか
そんなところだと思う。
git-fetchでなくgit-remote updateをあえて使う利点はremoteを
複数設定している時にいっぺんに更新できることぐらいかな
(このあたりの動作はgit-remote(1)のupdateのところに書いてある)
0236login:Penguin2009/03/12(木) 08:16:17ID:76FRS4+8
darcsから乗り換えるといいことありますか?
0237login:Penguin2009/03/12(木) 09:29:53ID:XKHVHsT3
>>236
pull したときに、いっぱい yes/no 聞かれずにすむ。
0238login:Penguin2009/03/14(土) 11:44:17ID:juJwYmYq
hg から乗り換えるといいことありますか?
0239login:Penguin2009/03/14(土) 11:58:11ID:i8Be0VVA
>238

まーきゅりある、って難しいスペルを覚えなくても良くなる。
覚えてないけど。
0240login:Penguin2009/03/14(土) 15:19:18ID:+0rKDWfW
>>238
高速.
0241login:Penguin2009/03/22(日) 22:31:18ID:/27zAYWE
git svn clone -s で Subversion からレポジトリをコピーしてみたのですが、
Subversion の tags が Git の tag にならずに branch になってしまうのは、
そういうものなのでしょうか。

Subversion のタグは、タグといいながらただのディレクトリだったりする変態仕様なので、
しょうがないのかなぁ…という気もするのですが…。
0242login:Penguin2009/03/26(木) 16:23:33ID:XSnWphDj
社内の git リポジトリを表示するのを探してます。
( github が許されなくて… )

Git Browser と ViewGit を見つけました。

Git Browser は見た目派手だけど実用度に疑問なので
ViewGit を検討しています。

ほかに何かいいのありませんか。
github クローンがあれば最高です。
0243login:Penguin2009/03/26(木) 16:35:56ID:g3Z2bRWJ
>>242
ttp://git.or.cz/gitwiki/InterfacesFrontendsAndTools
02442422009/03/26(木) 17:37:03ID:XSnWphDj
おお、こんなにあったんですね。ありがとうございます。

うーん、ざっと見た限り GitHub や ViewVC レベルってないですね。
定番はデフォルトの gitweb なのかな?
0245login:Penguin2009/03/28(土) 01:25:21ID:TZ6DBfAq
>>242
微妙に違うかもしれないけど
redmineに付属のリポジトリブラウザなんてどうよ?
02462422009/03/30(月) 15:37:27ID:A3cN4vHE
>>245
ありがとうございます。
trac & redmine は使ってます。
チケットとコミットを連動させるために。

差分のリッチな diff や、フォークの流れ、パッチ管理が
github を知ってしまうと、どれも霞んで見えて。。。
0247login:Penguin2009/04/01(水) 12:33:50ID:TObhm5N5
linux関係者はgitを使うのが多いという認識でいいのかな
0248login:Penguin2009/04/01(水) 20:55:16ID:LojNH9iG
linux 開発者は git しか使わないだろ常考
0249login:Penguin2009/04/01(水) 21:18:58ID:jmcNlx3x
>>247
Linux(狭義の=カーネルそのもの)開発のために作られたのがgit
0250login:Penguin2009/04/01(水) 21:54:39ID:MKGzQ4EB
GitHubでソース管理している人に聞きたいんですけど、
プロジェクトのホームページやリリース物件置き場やITSってどこつかってます?
0251login:Penguin2009/04/01(水) 22:12:24ID:AOF7SCh+
>>250
>プロジェクトのホームページ
githubでホストできる

>リリース物件置き場
適当にタグ付けしておけばzip等でダウンロードできるようになってる

>ITS
>>252に任せた
0252login:Penguin2009/04/01(水) 23:53:33ID:I1/8jsAx
checkpadかRTMでおk(マテ

0253login:Penguin2009/04/02(木) 01:51:26ID:L6Skfqgr
>>246
GithubのUIってそんないいかなーあんま好きじゃない。。。
俺は普通にGitwebがいちばん分かりやすいと思う。
じっくり見るならCUIだけど。git show-branchとかけっこう分かりやすいと思うな。
0254login:Penguin2009/04/03(金) 00:48:36ID:pDtVIzVu
>>250
ditzがいいと思います
0255login:Penguin2009/04/03(金) 18:00:14ID:uOZV7ek8
>> 250
lighthouseじゃだめ(´・ω・`)?
もしくは、ticgit。
0256login:Penguin2009/04/06(月) 09:58:37ID:JCLhMxPh
xrea に入れてる人って自前でコンパイルしてるのかな。
うちは面倒になったやめてmercurialをいれてgitweb形式で
使ってるわ。インストールはこっちのほうが簡単だったから。
xrea用のバイナリを公開しているところがあればなぁ。(ぶつぶつぶつぶつ)
0257login:Penguin2009/04/06(月) 23:28:22ID:eHpElSRS
xreaでgit入れられるの?makeでリソース不足になるかと思っていた。
0258login:Penguin2009/04/06(月) 23:51:46ID:JCLhMxPh
>>257
いれてる人はいるみたい。
0259login:Penguin2009/04/07(火) 18:44:33ID:HQC4Ps4f
xreaに自前で入れるっていう人は、ホスティングじゃ嫌な理由があるのん?
0260login:Penguin2009/04/08(水) 00:50:22ID:QNjBH7lc
>>259
githubってプライベートリポジトリが作れないし。そのへんじゃないのか。
容量も桁ちがいになるって事実もある。それは大きくないか。

>>257
サーバーでmakeをやってるんだろうか?てっきりクロスコンパイルかなにかだと思った。
0261login:Penguin2009/04/08(水) 01:10:30ID:5zwafMgz
>>260
「タダでは」作れない、と一応補足。
0262login:Penguin2009/04/08(水) 16:50:09ID:mCOhjIt8
>>260
XREAにコンパイラはなかったと思う。クロスコンパイルしてるんでしょう
0263login:Penguin2009/04/09(木) 02:02:38ID:PTQTRrqa
クロスってわざわざx86以外でコンパイルするんかいw
パッケージ作って持ち込んだらいいんちゃう?
0264login:Penguin2009/04/09(木) 02:14:06ID:CHi6WPmY
xreaにgit入れてみたいけど、
違う環境でコンパイルしたものを持ち込むのって
やってみたことないなぁ
0265login:Penguin2009/04/09(木) 02:34:36ID:FnIYwStd
>>263
それも試した。そのためにはosの環境を知るひつようがあるが。
0266login:Penguin2009/04/09(木) 02:36:23ID:FnIYwStd
>>264
mercurialは簡単に入ったけど、どうしてもgitとなれば、git-mercurialを使うか
svn-gitを使うかって方法もあるよ。svnは入ってるから。
0267login:Penguin2009/04/09(木) 02:41:28ID:PTQTRrqa
gitを導入できそうなのに、OSが不明ってどういうことなんだ?
xrea昔使ってたけどわすれちゃったい
0268login:Penguin2009/04/09(木) 09:19:35ID:FnIYwStd
>>267
サーバーで違うからね。
0269login:Penguin2009/04/19(日) 19:40:35ID:EpTMRFi2
githubのIssueって使えてる?
どのrepoをみても、ず〜っと「Loading」のままなんだけど‥‥‥。(´Д`)
0270login:Penguin2009/04/19(日) 21:02:55ID:vX0fbY2N
issues(0)のものならLoadingにはならなかった。
10個ぐらい探したけどissues(0)でないものは見つからなかった。
Safari4Beta
0271login:Penguin2009/04/21(火) 09:03:12ID:WkK6/Gbo
WEB+DB PRESS vol.50のgit特集って現メンテナの記事なんだな。
0272login:Penguin2009/04/21(火) 19:01:11ID:KUyr8Kra
浜田さんですね
0273login:Penguin2009/04/21(火) 22:05:48ID:yPrR70Fe
>>270
あれ?そう?
じゃあ、自分だけかぁ。
誰もどこにも不具合報告してない感じだし。
Firefox 3.0.7
0274login:Penguin2009/04/21(火) 23:48:13ID:k6LFvaa1
javascript切ってる、とか
■ このスレッドは過去ログ倉庫に格納されています