git スレッド
■ このスレッドは過去ログ倉庫に格納されています
0001login:Penguin
2007/12/16(日) 18:40:39ID:GslAi8rsあの、リーナス・トーバルズだって、バージョン管理を始めたんだ。
http://www.kernel.org/pub/software/scm/git/
git チュートリアル (バージョン 1.5.1 以降用)
http://www8.atwiki.jp/git_jp/pub/Documentation.ja/tutorial.html
0459login:Penguin
2009/09/01(火) 17:44:29ID:Cu6PEjTW古いコミットを削除?して新たにコミットしている、という事でしょうか?
0460login:Penguin
2009/09/01(火) 19:42:56ID:+F0cM0kX0461login:Penguin
2009/09/01(火) 20:44:28ID:2vtwePxMなるほど。
git show "古いハッシュ"
で、古いコミットのログが見れました。
削除はしてないんですね。
0462login:Penguin
2009/09/01(火) 21:41:34ID:miUg4h5cgcしたら消えるよ。どこからも参照されてなければ。
0463login:Penguin
2009/09/04(金) 22:13:13ID:jVdAqUn/ところから普段はfetchしている
$ git fetch
んですが時々別の場所からfetchしたい場合があります。
$ git fetch another_mirror
こういう場合、各ミラーをそれぞれremoteとして登録すべきなんで
しょうか。調べた限りではurl.<url>.insteadof=<alias>を
使ってURLに別名をつけられるのですが、fetchコマンドの最初の
引数にこのURL別名だけを与えても実際にはデータが落ちず、refspec
まで書かないといけなくて面倒です。
0464login:Penguin
2009/09/11(金) 20:42:02ID:Crcv3Tiigit push したのを取り消すにはどうしたらいいでしょうか?
0465login:Penguin
2009/09/11(金) 21:24:08ID:GPAiiF+d「取り消す」というのがamendしたものを反映したいという意味なら
git push -f
で上書きできるよ。
0466login:Penguin
2009/09/11(金) 21:34:54ID:Crcv3Tiiありがとうございます。
history からも消すことはできますか。
0467login:Penguin
2009/09/11(金) 21:37:03ID:GPAiiF+d> history からも消すことはできますか。
んん? 何を消したいのかもう少し詳しく。
0468466
2009/09/11(金) 22:41:07ID:Crcv3Tiigithub に git commit & git push してから間違いに気づいてしまったのです。
それを消したいのです。git log から消えたり、
github は history を見ることが出来ますが、それからも消えるとありがたいです。
0469login:Penguin
2009/09/11(金) 22:47:34ID:CyE8alMj何もかも上書きさるよ。
ただgithubってことは既に公開されてるから、他の人があれ何だこれこわい、
ってなるかも。つまりあんまやるべきじゃない。
0470466
2009/09/11(金) 22:50:59ID:Crcv3Tiiありがとうございます。
確かに消すのはよくないですよね。
( 別の場所から commit したから名前を間違えてしまってw )
0471login:Penguin
2009/09/16(水) 17:10:33ID:YPgdd8OBgit log では表示されるんですけど、master に反映されていません・・・。
0472login:Penguin
2009/09/16(水) 17:13:27ID:XD22rFwt「反映」を適当に解釈してエスパーしてみると、
git pull
0473login:Penguin
2009/09/16(水) 17:19:00ID:YPgdd8OBリモート自身に push されてきたものを、自身の master に反映させる、でした^^;
リモート(origin)側で git pull する場合ってどう指定するんでしょう?
0474login:Penguin
2009/09/16(水) 17:40:50ID:XD22rFwt「自身の master に反映させる」なら git pull だよ。
リモート(origin)側をどうにかしたいの?
0475login:Penguin
2009/09/16(水) 18:07:18ID:YPgdd8OBはい。その通りです。
サーバに置いたoriginに対してローカルからpushした結果を、originのmasterに反映させたいんです。
0476login:Penguin
2009/09/16(水) 18:45:32ID:XD22rFwtローカルのmasterをoriginのmasterに突っ込むにはこう
git push origin master:master
文章から推測するにいまひとつ理解できてないようなので、この辺を読むことをオススメします
http://www8.atwiki.jp/git_jp/pub/git-manual-jp/Documentation/gittutorial.html
0477login:Penguin
2009/09/16(水) 19:43:56ID:JwlYDLcsgit checkout -f HEAD
0478login:Penguin
2009/09/16(水) 22:23:53ID:Wm2GOTkuそれなら git remote update だよ
0479login:Penguin
2009/09/16(水) 23:36:01ID:YPgdd8OB仰る通りリモートは bare じゃないです。
git checkout -f HEAD
でリモートの状態を最新にできました!
ありがとうございました!
0480login:Penguin
2009/09/17(木) 01:26:37ID:P4kqmOWE0481login:Penguin
2009/09/21(月) 13:23:23ID:GwGS71uzhttp://www.shuwasystem.co.jp/products/7980html/2380.html
# 翻訳本の「入門git」じゃないぞ
Amazon はすでに売り切れ状態みたいだけどね。
0482login:Penguin
2009/09/21(月) 13:34:20ID:zscoFCMs0483login:Penguin
2009/09/21(月) 13:57:00ID:ZVNst0Rd???
0484login:Penguin
2009/09/21(月) 14:34:05ID:vL4ajUNHぎゃー
つい最近翻訳本のほう買っちまったぜ…
Hamanoさんが書くべきだろとは思ってたけど、書いてたのか〜
目次だけ見たけどすごいしっかりしてそうだ。読むのが楽しみ!
0485login:Penguin
2009/09/21(月) 14:36:17ID:Sxx9inOy0486login:Penguin
2009/09/21(月) 14:57:30ID:GwGS71uzここを読んでもっとwktkするがよい
http://gitster.livejournal.com/38015.html
0487login:Penguin
2009/09/21(月) 21:31:18ID:vL4ajUNHありがとう、livejournalか、そこ知らなかったよ。
wktkが止まらないので、明日本屋うろついてくる。Amazon売り切れ過ぎ、入荷予定遅すぎ。
0488login:Penguin
2009/09/22(火) 20:31:15ID:ssamdIV8にんまりしてしまうに 1000カーネル
0489463
2009/09/23(水) 18:27:17ID:vjEE4TYp0490login:Penguin
2009/09/23(水) 21:43:44ID:jo5qX9Sxremote 登録すると明示的に指定しなくても、そのリポジトリの全ブ
ランチを fetch してくれるのは.git/config 内でそのリモートリポ
ジトリの設定の fetch の行におまじないが書いてあるから。
別名定義したいほどの頻度で使うなら素直に remote add しろや
0491login:Penguin
2009/09/23(水) 22:37:49ID:O/8ntIxQ>別名定義したいほどの頻度で使うなら素直に remote add しろや
>>463にはすまんが、俺もそう思ってた。
てか、refspecまで書かなきゃダメ、とかいろいろ試してみたんだったら、
MLで質問したほうが良いんじゃないかな。bugかもしれないし。
0492login:Penguin
2009/09/24(木) 00:06:18ID:h3tEtuixんー。fetch の refspec はリモートリポジトリのどのブランチをロー
カルのどの参照名で格納するか(remote/<hoge>/master とかね)を指
定するものだから、 fetch のときに指定必須(*1)なのはしょうがな
いんじゃね?gitからしてみりゃ「どこに格納すりゃいいのよ?」っ
て話でしょ。普通はそれが面倒だから remote 登録しちゃえば?と
思うんだけどねー。
*1 何も指定しなければリモートの master がローカルの
FETCH_HEAD として格納されるはず。
「全部 fetch して remote/<URL>/* に自動的に格納されろや」とか
いう話ならMLに提案するほうがいい話だと思う。もし提案するとし
てもremote add するよりも、「デフォルトでrefspecを指定しない
場合にその挙動をとるほうがより優れている」、という論拠が必要
だと思うよ。
あと、もし pull request 受けるような状況であれば、みんなpull
用のbranch切って pull しちゃってる(or master に pull して結果
が気に入らなければ reset )だろうから、単発の fetch のrefspec
指定を楽にしたい理由があんま思いつかない。
0493login:Penguin
2009/09/26(土) 14:03:44ID:EEvSsK+sGitHubの収益源ってなんだっけ?
0494login:Penguin
2009/09/26(土) 16:19:01ID:1VrklZ1N鯖はEngineYardだな。
0495login:Penguin
2009/09/28(月) 11:57:44ID:tMILVOon0496login:Penguin
2009/09/28(月) 17:40:21ID:9izAOEVdタダで使い倒しておいてあまり文句いう筋合いもないけれど
0497login:Penguin
2009/09/28(月) 18:11:25ID:tMILVOon0498login:Penguin
2009/09/28(月) 18:13:49ID:JZFsKZPhそういえば、こんなのあったね。
0499login:Penguin
2009/09/28(月) 22:56:07ID:oz2dR2Weそれとも差分だけ?また、ローカルリポジトリには圧縮されたバイナリはどのように
保存されるのでしょうか?バイナリサイズが大きいプロジェクトで使用予定なのですが
ローカルリポジトリが膨れ上がるのを恐れています。
0500login:Penguin
2009/09/29(火) 21:45:20ID:bBdN/JgI(あるいは時間が来て)packされるまではそのままのバージョンが
残ってるみたい。
mkdir foo
cd foo
git init
dd if=/dev/urandom of=BIN bs=1024k count=1
git add .
git commit -m 1
du -hs .git
echo -n A >> BIN
git add .
git commit -m 2
du -hs .git
find .git/objects -type f
git gc
du -hs .git
0501login:Penguin
2009/09/29(火) 23:05:28ID:RwaZJqu/まあ、HDDスペース節約よりは速度重視な最適化というわけですね。
HDDは、いっぱい増やすしかないかぁ。
後 Windows のファイル名の日本語処理がまずいところが不満ですね。
これさえ解決すれば svn から乗り換えるんだけどなぁ。来年ぐらいかなぁ。
0502login:Penguin
2009/10/02(金) 20:43:35ID:N5w8liglあれなんかEngine Yardじゃなくなってるぽい。
こないだのメンテで移動したのかな。
0503login:Penguin
2009/10/05(月) 13:23:59ID:wUrA1+B20504login:Penguin
2009/10/05(月) 13:27:13ID:Llm7fIHPでぐぐれば面白いのが見つかるぞ
0505login:Penguin
2009/10/07(水) 07:24:37ID:GcizbF6Ggit で下の階層に置かれている newton を
持ってくるにはどうしたら良いのでしょうか?
xyzzz を持ってくるのはできるのですが…
0506login:Penguin
2009/10/07(水) 07:53:19ID:GcizbF6Ggit clone -n git://git.example.org/xyzzz
cd xyzzz
ls
git checkout -b newton
git fetch
で取りあえず上手く取ってこれるみたいでした
なんでも一行でやろうとするなじぶん('A
0507login:Penguin
2009/10/07(水) 20:16:41ID:9QifAEecgit cloneで既にfetchしているんでcheckoutの後にfetchしなくても
0508login:Penguin
2009/10/09(金) 23:56:02ID:zcQ4FwK0>後 Windows のファイル名の日本語処理がまずいところが不満ですね。
$ git config core.quotepath true
でもだめでしょうか。
0509login:Penguin
2009/10/10(土) 10:37:00ID:qzf82yALcygwin 版の話ですかね。基本エンジニア以外も触るのでTortoiseGit の(MSYS版)でコミット
した後の亀が飛んで行ったところのメッセージが必ず文字化けしているのがちょっと嫌ですね。
また現在 svn を利用していてこちらを git-svn で使用したいのですがこれも MSYS版には
入っていないようなのでそこもネックになっています。
0510login:Penguin
2009/10/10(土) 11:19:34ID:KZzP/TMnmsysgit(PortableGit-1.6.3.2-preview20090607) + TortoiseGit 1.0.0.2にて
git-svn をGUI経由で使えてますよ
git-svnにはハマリどころがありました。
svnリポジトリとシンクロしているgit側ブランチでgitのマージコミットをつくったりすると
git svn dcommit時にエラーになるので要注意ですね
ここらへんに情報があります
http://learn.github.com/p/git-svn.html
Rules and Guidelines
0511login:Penguin
2009/10/10(土) 19:49:42ID:mLaG7GzK0512login:Penguin
2009/10/10(土) 19:51:42ID:mLaG7GzKTortoiseGit に同梱されている igit.exe のソース
どこにあるか、知っている人いたら教えてもらえないだろうか?
どうも TortoiseGit のリポジトリの中にはなさそうなんだけれども。
0513login:Penguin
2009/10/10(土) 19:57:24ID:6WX0ZYRA0514login:Penguin
2009/10/10(土) 20:14:31ID:zeXst2F3Windowsでgit使いたいんなら、フィードバックしないと一向に改善されないと思うよ
git開発者は、Windows特有の問題とか疎いだろうし
0515512
2009/10/10(土) 20:47:16ID:mLaG7GzKスレタイのみで検索して書き込んでしまった。
分散型バージョン管理システムのフロントエンドを
git の Windows 版フロントエンド作りたいなぁと思って
TortoiseGit のソース見てたんだが、
0516login:Penguin
2009/10/10(土) 20:48:31ID:mLaG7GzKごめん、反省した。途中だけど、もうやめる。
0517login:Penguin
2009/10/10(土) 21:07:24ID:5i7bVBSp次スレはム板にする?
0518login:Penguin
2009/10/10(土) 21:26:06ID:e4Crdqki0519login:Penguin
2009/10/11(日) 00:39:32ID:9BCQsKnT0520login:Penguin
2009/10/11(日) 02:33:37ID:FePGrTfs0521login:Penguin
2009/10/11(日) 02:44:24ID:MLGHRsF4プログラム板にバージョン管理システムのスレあるけど、、、
http://pc12.2ch.net/test/read.cgi/tech/1242918130/
板違いにはならないだろうけど、、、コアな話題はここでも良いんじゃないかなぁ
>>519
あっちのスレ見てると、使ってる人居るみたいだよ。
日本語ファイル名で苦労するようだけど、UTF-8 Cygwinではちゃんと使えてるらしい。
0522login:Penguin
2009/10/11(日) 02:50:26ID:9BCQsKnTここはLinux板
0523login:Penguin
2009/10/11(日) 03:22:42ID:MLGHRsF4ってお前が言うから、教えてやったんだぜ。
0524login:Penguin
2009/10/11(日) 03:40:02ID:9BCQsKnT0525login:Penguin
2009/10/11(日) 03:41:49ID:FePGrTfs終わりだぜ。しばらくmixijかtwitterでもやってたほうがいい。
0526login:Penguin
2009/10/11(日) 12:14:56ID:bj1WkRKb0527login:Penguin
2009/10/11(日) 14:55:39ID:tk3kki/A0528login:Penguin
2009/10/11(日) 15:00:46ID:h+3Jm6y90529login:Penguin
2009/10/11(日) 15:03:12ID:h+3Jm6y90530login:Penguin
2009/10/11(日) 20:01:14ID:EMO8XszPttp://article.gmane.org/gmane.comp.version-control.git/129906
0531login:Penguin
2009/10/11(日) 23:51:09ID:5ur/s6Zl乗り換えたら確かに git-svn を TortoiseGit から使えました。Windows も実用段階
に入ってきましたね。
0532login:Penguin
2009/10/12(月) 12:09:24ID:cIqY6mPO>Windows も実用段階に入ってきましたね。
きっとビルゲイツも喜ぶよ、それ言ってやったら。
0533login:Penguin
2009/10/15(木) 23:02:27ID:eyJUfiVxhttp://www.yo●utube.c●om/watch?v=●MUv12Ae7ojE
小沢一郎 〜 闇の系譜 :秘書逮捕の真相/北朝鮮との黒い関係 高画質
http://www.yo●utube.com/w●atch?v=gdKVt●_vKCHc
2/3【イリハム・マハムティ】東トルキスタンの歴史と中共の弾圧[H21/7/8]
http://www.you●tube.com/watch?v=6eUN●hjdBLXg
漫画で学ぶチベット問題
http://www.ni●covideo.jp/w●atch/sm275●2213
日米規制改革および競争政策イニシアティブに基づく日本国政府への米国政府要望書
http://japan.u●sembassy.●gov/j/p/tpj-j2●0041020●-50.html#mineika-s
●の部分は外してブラウザのURLに入れること
0534login:Penguin
2009/10/21(水) 13:42:46ID:c6oQncZ5もしかして git って名前通り、日付指定で checkout できないの?
やっぱ馬鹿。
0535login:Penguin
2009/10/21(水) 21:06:25ID:l0alaDlxなぜできないと思ったのか詳しく。
0536login:Penguin
2009/10/21(水) 21:07:29ID:aa6m0+r8おみゃーがgitなんでは
0537hNhmZvkzyoOKS
2009/10/23(金) 00:55:36ID:AJC23NiC0538VfpxZeUExLhxZWcT
2009/10/23(金) 22:20:46ID:iDEpw1qy0539login:Penguin
2009/10/28(水) 22:39:14ID:5N68sDZB何世代も過去のコミットのログメッセージの再編集はどうやればできるのでしょうか。
それともそんなことはできないんでしょうか。
0540login:Penguin
2009/10/28(水) 22:53:34ID:oPxfRTK5みたくやって pick を edit にして、--amend の時に変更かな
0541login:Penguin
2009/10/28(水) 22:53:38ID:ZAqclN9p色々やり方あると思うが、例えば git rebase -i ... で編集したい commit を "edit" に設定
して、そこで git commit --amend とか
0542login:Penguin
2009/10/28(水) 22:54:51ID:Bv3SPJWB妙な日本語訳の改善案などがあればお知らせください。
http://lab.mzr.jp/gitk/
0544login:Penguin
2009/11/02(月) 10:53:06ID:dHnBQYx7脳内で考えるような「単純な差し替え」は厳密にはできない
「以前と同じ修正群と、以前と違うコミットメッセージ」を持ったコミットの列を作って繋げなおす、という手順になる
動作的には同じだが、オブジェクトとしては別だし、ハッシュ値も違う
push した後だと以前のコミットと同一視させる手段がなくてたいそう悲惨
0545login:Penguin
2009/11/02(月) 22:10:38ID:tm2FQ3Ctのを見ると、そこらへんは分かってるように見える。
0546login:Penguin
2009/11/12(木) 18:58:57ID:g557GIl1ttp://pc12.2ch.net/test/read.cgi/tech/1257079004/90-
0547login:Penguin
2009/11/12(木) 21:02:35ID:ExEkAwfKどっちだ?
http://golang.org/
http://books.google.com/books?id=jyIrfDokmKgC&dq=isbn:0975444913
0548login:Penguin
2009/11/18(水) 09:19:34ID:F9Vk+fo2Applying: コミットメッセージ
usage: git update-ref [options] -d <refname> [<oldval>]
or: git update-ref [options] <refname> <newval> [<oldval>]
-m <reason> reason of the update
-d deletes the reference
--no-deref update <refname> not the one it points to
と出てしまいます。
git rebase --continueしても同じメッセージが出ます。
どうすればいいんでしょうか?
0549548
2009/11/18(水) 15:11:19ID:F9Vk+fo2git rebase -i masterすると問題なくリベースできました。
解決はできたのですが、なぜgit rebase masterでリベースできないのに
インタラクティブモードではできるのか、わけがわからない・・・
0550login:Penguin
2009/11/18(水) 18:47:37ID:d8p7qpgPrebaseの内部でコケてるみたいだけど、遭遇したことないなあ。
バージョンは? もしかしてCygwinだったり?
0551login:Penguin
2009/11/18(水) 22:32:08ID:vQLD30Z2rebase -i masterでリベースできるってことは
ふだん使うブランチはmasterではなくて、
masterっていうローカルブランチがたとえば
ref: origin/master
みたいになってたりするの?
0552login:Penguin
2009/11/22(日) 09:56:48ID:AGTujtCRbareじゃない二つのリポジトリAとBがあります。
(BはAからのクローンです)
Bで変更を行ってAにPushしたあと、Aでgit statusすると
A上ではBで行った変更の真逆の修正が行われてステージされていることになっています。
これはどうしてでしょうか?
純粋に期待している動作(A上でもBで行った修正がコミット済みになっていて何もステージされていない状態)にするにはどうしたらよいのでしょう?
0553login:Penguin
2009/11/22(日) 11:17:08ID:VQCPH5PDステージされてるなら git reset なり git checkout . なりすればいいんじゃないの?
0554login:Penguin
2009/11/22(日) 12:57:08ID:KnKStRKzbareじゃないとこにpushじゃしょうがないんじゃないかな。
Aでpullしたらいいんじゃない?
0555login:Penguin
2009/11/22(日) 18:25:36ID:AGTujtCR>>553
A上で、真逆の修正が行われているものを
すべてgit checkout -- hogehoge.txt
して解除してみたところ結果としてはうまくいきました
>>554
AからBのリポジトリをremoteに登録して、pullしようとすると
Because this is not the default configured remotefor your current
branch,you must specify a branch on the command line.
とおこられます。
デフォルトのリモート先ではないので
先に設定を変えましょうといった感じでしょうか
現状ですと、正しくPushするためにはbareじゃないリポジトリを
用意する必要があると考えた方がいいのでしょうか?
checkoutする方法や都度リモート先を変更するのは手順が煩雑になるため・・
0556552,555
2009/11/22(日) 18:28:42ID:AGTujtCR誤:現状ですと、正しくPushするためにはbareじゃないリポジトリを
正:現状ですと、正しくPushするためにはbareなリポジトリを
0557552,555
2009/11/22(日) 19:14:14ID:AGTujtCRBからAにPushしたあと、Aでgit reset --hard
すればいいだけでした。
返信をくださった方ありがとうございました。
0558login:Penguin
2009/11/28(土) 04:29:09ID:mXZ4Zywnマージすることが不可能な場合、どちらかのファイルを選択することになりますが
自分の作業を優先してコンフリクト解消する場合には
git add コンフリクトしてるファイル
git commit
これでコンフリクト解消できますが、相手のファイルを優先したい場合に
git reset コンフリクトしてるファイル
git commit
をすると両者の作業がなかったことになってしまいます。
相手の作業を優先する場合にはどのようなコマンドを打てばよいのでしょうか
■ このスレッドは過去ログ倉庫に格納されています