トップページ⇒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
0516login:Penguin2009/10/10(土) 20:48:31ID:mLaG7GzK
また、途中で書き込んでしまった。
ごめん、反省した。途中だけど、もうやめる。
0517login:Penguin2009/10/10(土) 21:07:24ID:5i7bVBSp
>>513
次スレはム板にする?
0518login:Penguin2009/10/10(土) 21:26:06ID:e4Crdqki
ここ、隔離スレかと思ってたんだが
0519login:Penguin2009/10/11(日) 00:39:32ID:9BCQsKnT
Windows上でgit使ってる奴なんかいなんだから、Windows特有の問題なんかしらないってことでしょ
0520login:Penguin2009/10/11(日) 02:33:37ID:FePGrTfs
>>512 恥ずかしいやつ過ぎるwwwwwwwwww
0521login:Penguin2009/10/11(日) 02:44:24ID:MLGHRsF4
>>515,517
プログラム板にバージョン管理システムのスレあるけど、、、
http://pc12.2ch.net/test/read.cgi/tech/1242918130/
板違いにはならないだろうけど、、、コアな話題はここでも良いんじゃないかなぁ

>>519
あっちのスレ見てると、使ってる人居るみたいだよ。
日本語ファイル名で苦労するようだけど、UTF-8 Cygwinではちゃんと使えてるらしい。
0522login:Penguin2009/10/11(日) 02:50:26ID:9BCQsKnT
そりゃ、あっちのスレではいるだろうよ(あっちがどこなのか知らんけど)
ここはLinux板
0523login:Penguin2009/10/11(日) 03:22:42ID:MLGHRsF4
>Windows上でgit使ってる奴なんかいなんだから
ってお前が言うから、教えてやったんだぜ。
0524login:Penguin2009/10/11(日) 03:40:02ID:9BCQsKnT
この板だろうが、あほ?
0525login:Penguin2009/10/11(日) 03:41:49ID:FePGrTfs
安価もつけてない2ちゃんのレスを自分だけのメッセージって思うようになったら
終わりだぜ。しばらくmixijかtwitterでもやってたほうがいい。
0526login:Penguin2009/10/11(日) 12:14:56ID:bj1WkRKb
は? LinuxもWindowsも両方使ってる奴だって居るだろうが、カス?
0527login:Penguin2009/10/11(日) 14:55:39ID:tk3kki/A
で、ここは本スレなのか?
0528login:Penguin2009/10/11(日) 15:00:46ID:h+3Jm6y9
一応。
0529login:Penguin2009/10/11(日) 15:03:12ID:h+3Jm6y9
まあ今はム板にある Subversion スレも、この Linux 板の卒業生だしな。
0530login:Penguin2009/10/11(日) 20:01:14ID:EMO8XszP
[ANNOUNCE] GIT 1.6.5
ttp://article.gmane.org/gmane.comp.version-control.git/129906
0531login:Penguin2009/10/11(日) 23:51:09ID:5ur/s6Zl
Git-1.6.1-preview20081227.exe から Git-1.6.4-preview20090730.exe に
乗り換えたら確かに git-svn を TortoiseGit から使えました。Windows も実用段階
に入ってきましたね。
0532login:Penguin2009/10/12(月) 12:09:24ID:cIqY6mPO
>>531
>Windows も実用段階に入ってきましたね。
きっとビルゲイツも喜ぶよ、それ言ってやったら。
0533login:Penguin2009/10/15(木) 23:02:27ID:eyJUfiVx
   【恐怖の】呆れるほど危険な民主党の正体【民主党】
    http://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:Penguin2009/10/21(水) 13:42:46ID:c6oQncZ5



もしかして git って名前通り、日付指定で checkout できないの?



やっぱ馬鹿。



0535login:Penguin2009/10/21(水) 21:06:25ID:l0alaDlx
>534
なぜできないと思ったのか詳しく。
0536login:Penguin2009/10/21(水) 21:07:29ID:aa6m0+r8
>>534
おみゃーがgitなんでは
0537hNhmZvkzyoOKS2009/10/23(金) 00:55:36ID:AJC23NiC
But while these inter- ventions slowed the adjustments of the market, these adjustments were still in ultimate control of the situation. ,
0538VfpxZeUExLhxZWcT2009/10/23(金) 22:20:46ID:iDEpw1qy
This initial post on Every Kitchen Table frames the need for new food systems connecting more consumers with sustainably grown, processed and transported food. ,
0539login:Penguin2009/10/28(水) 22:39:14ID:5N68sDZB
最後にコミットした時のログメッセージの再編集は git commit --amend でできるのですが、
何世代も過去のコミットのログメッセージの再編集はどうやればできるのでしょうか。
それともそんなことはできないんでしょうか。
0540login:Penguin2009/10/28(水) 22:53:34ID:oPxfRTK5
git rebase -i HEAD\~5
みたくやって pick を edit にして、--amend の時に変更かな
0541login:Penguin2009/10/28(水) 22:53:38ID:ZAqclN9p
>>539
色々やり方あると思うが、例えば git rebase -i ... で編集したい commit を "edit" に設定
して、そこで git commit --amend とか
0542login:Penguin2009/10/28(水) 22:54:51ID:Bv3SPJWB
ttp://progit.org/book/ja/ch6-4.html
0543 ◆Mizar2to32 2009/10/29(木) 20:21:01ID:25uBABNp
git gui は日本語UIにできるのに、 gitk はできないのも妙に思い、日本語訳を試みてみました。
妙な日本語訳の改善案などがあればお知らせください。

http://lab.mzr.jp/gitk/
0544login:Penguin2009/11/02(月) 10:53:06ID:dHnBQYx7
>>539
脳内で考えるような「単純な差し替え」は厳密にはできない
「以前と同じ修正群と、以前と違うコミットメッセージ」を持ったコミットの列を作って繋げなおす、という手順になる
動作的には同じだが、オブジェクトとしては別だし、ハッシュ値も違う
push した後だと以前のコミットと同一視させる手段がなくてたいそう悲惨
0545login:Penguin2009/11/02(月) 22:10:38ID:tm2FQ3Ct
もちろんそれは正しいけど、commit --amendを持ち出してる
のを見ると、そこらへんは分かってるように見える。
0546login:Penguin2009/11/12(木) 18:58:57ID:g557GIl1
Gitの実装はいつCからGoに切り替わりますか?
ttp://pc12.2ch.net/test/read.cgi/tech/1257079004/90-
0547login:Penguin2009/11/12(木) 21:02:35ID:ExEkAwfK
>>546
どっちだ?
http://golang.org/
http://books.google.com/books?id=jyIrfDokmKgC&dq=isbn:0975444913
0548login:Penguin2009/11/18(水) 09:19:34ID:F9Vk+fo2
git pull --rebaseしたのですが、

Applying: コミットメッセージ
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しても同じメッセージが出ます。
どうすればいいんでしょうか?
05495482009/11/18(水) 15:11:19ID:F9Vk+fo2
git fetchして、git rebase masterすると同じメッセージが出たのですが、
git rebase -i masterすると問題なくリベースできました。
解決はできたのですが、なぜgit rebase masterでリベースできないのに
インタラクティブモードではできるのか、わけがわからない・・・
0550login:Penguin2009/11/18(水) 18:47:37ID:d8p7qpgP
>>548
rebaseの内部でコケてるみたいだけど、遭遇したことないなあ。
バージョンは? もしかしてCygwinだったり?
0551login:Penguin2009/11/18(水) 22:32:08ID:vQLD30Z2
>>548
rebase -i masterでリベースできるってことは
ふだん使うブランチはmasterではなくて、
masterっていうローカルブランチがたとえば
ref: origin/master
みたいになってたりするの?
0552login:Penguin2009/11/22(日) 09:56:48ID:AGTujtCR
すみません、煮詰まってしまったので詳しいかた教えていただけないでしょうか

bareじゃない二つのリポジトリAとBがあります。
(BはAからのクローンです)

Bで変更を行ってAにPushしたあと、Aでgit statusすると
A上ではBで行った変更の真逆の修正が行われてステージされていることになっています。

これはどうしてでしょうか?

純粋に期待している動作(A上でもBで行った修正がコミット済みになっていて何もステージされていない状態)にするにはどうしたらよいのでしょう?
0553login:Penguin2009/11/22(日) 11:17:08ID:VQCPH5PD
>552
ステージされてるなら git reset なり git checkout . なりすればいいんじゃないの?
0554login:Penguin2009/11/22(日) 12:57:08ID:KnKStRKz
>>552
bareじゃないとこにpushじゃしょうがないんじゃないかな。
Aでpullしたらいいんじゃない?
0555login:Penguin2009/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,5552009/11/22(日) 18:28:42ID:AGTujtCR
間違えました。

誤:現状ですと、正しくPushするためにはbareじゃないリポジトリを
正:現状ですと、正しくPushするためにはbareなリポジトリを
0557552,5552009/11/22(日) 19:14:14ID:AGTujtCR
たびたびすみません。自己解決しました。

BからAにPushしたあと、Aでgit reset --hard
すればいいだけでした。

返信をくださった方ありがとうございました。
0558login:Penguin2009/11/28(土) 04:29:09ID:mXZ4Zywn
バイナリファイルがコンフリクトした際にどのように対処してますでしょうか
マージすることが不可能な場合、どちらかのファイルを選択することになりますが
自分の作業を優先してコンフリクト解消する場合には

git add コンフリクトしてるファイル
git commit

これでコンフリクト解消できますが、相手のファイルを優先したい場合に

git reset コンフリクトしてるファイル
git commit

をすると両者の作業がなかったことになってしまいます。

相手の作業を優先する場合にはどのようなコマンドを打てばよいのでしょうか
0559login:Penguin2009/11/28(土) 20:11:39ID:xkqQAqqu
git checkout --ours --theirs
0560login:Penguin2009/12/03(木) 20:30:50ID:lBf6Jtla
ttp://www.kernel.org/pub/software/scm/git/docs/RelNotes-1.6.5.4.txt
0561login:Penguin2009/12/04(金) 13:36:14ID: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な状況なんだかよくわからないです。どうやったら直せるんでしょうか?
0562login:Penguin2009/12/04(金) 22:38:29ID:8MryHyNF
>>561
pushとpullって名前からしてやることが近い気がしてしまうけど、
pull:remoteをfetchして現在のブランチにmerge(fetchしてmergeするのと同じことが起こる)
push:remoteブランチをローカルのブランチで上書き
なので、pullはfast-forwardじゃなくてもマージコミット作ってくれるけど、
pushはマージはしないのでfast-forwardじゃない時は怒られる。forceオプションで強制pushすると
ヘタするとremoteブランチのコミットが失われる。

fast-forwardの意味が分からない場合は、チュートリアル見ると良いと思うよ。
Git入門 - トップページ
http://www8.atwiki.jp/git_jp/
0563login:Penguin2009/12/05(土) 10:43:44ID:Pt8GWP/i
>>562
「なんでnon-fast-forwardな状況」であるかの説明になっていないけど
0564login:Penguin2009/12/05(土) 13:58:28ID:dGM7vi/8
>>563
それが分からなければチュートリアル読んだほうが良いと思ったから。
0565login:Penguin2009/12/06(日) 00:13:42ID:O+n3DTMA
>>564
質問は「なんでnon-fast-forwardな状況」なのかであって
「(non-)fast-forwardとは何か」ではないので、だったら
>>561の説明自体無駄で最初からチュートリアルのURLだけ
案内するのと変わんねーじゃん
0566login:Penguin2009/12/06(日) 03:51:03ID:3OwwH+xV
>>565
ほんとだ、俺寝ボケてたみたいだわ。ごめん。

>>561
Bの進化分は既にAに反映されているが、Cはそれ以前のAの状態を元に進化しているので、
non-fast-forwardということになる。
0567login:Penguin2009/12/07(月) 12:28:13ID: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.
05685612009/12/07(月) 13:26:24ID:BLewJ948
若干荒れ気味になってすみません。
>566
>Bの進化分は既にAに反映されているが、Cはそれ以前のAの状態を元に進化しているので、
でその通りでした。Cで
$ git pull B
コンフリクト等解決して
$ git push A
でOKでした。
05695612009/12/07(月) 13:34:18ID:BLewJ948
で、思ったんですが、non-fast-forwardな原因を追いかけるのはどうやるのが一番わかりやすいですかね?
私の今回の場合、過去にどう作業していたか思い出した、という原始的な方法だったんだけど、便利なコマンドとかありますか?
$ git log --graph
とか見ても、ごっちゃで気づけなかったです。
0570login:Penguin2009/12/07(月) 14:54:49ID: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とか。
0571login:Penguin2009/12/08(火) 01:34:52ID:JrbFTpX+
>>569
gitk --all と打つとグラフィカルにグラフ表示してくれるので
fast-forwardかどうかすぐわかる
05725612009/12/10(木) 14:41:50ID:ZxyM+JCY
>570,571
リモートのコンソールにログインして使うことが多いので、gitkは使えないんです。
X飛ばすのも面倒な環境だし。
git show-branch の見かたを覚えることにしますわ。
0573login:Penguin2009/12/11(金) 09:24:45ID:n6TyF9bQ
git clone すればいいんじゃね?
0574login:Penguin2009/12/12(土) 01:53:51ID:1uRf1xZK
入門Git買ったんだが、これ分かりやすいな
さすがに濱野さんが書いてるだけあるか。

チームで使うSCMをSubversionからGitに変えたいんだが
メンバー全員に正しいGitの使い方を教育するのは、骨が折れそうだな・・・
0575login:Penguin2009/12/12(土) 02:23:58ID:7I0ALriM
>>574
入門Git、神本なのは確かだけど、俺としては日本語ちょっとクドい気がしたな。
アメリカ在住らしいから、脳が英語になってるんじゃなかろうか。

Gitって、viとかみたいに取っ付きにくいけど慣れてしまうと手放せなくなる
典型的な麻薬ツールだと思う。そのぶん障壁が高くて文句言われがちなんだけど。
だから「メンバー全員に正しいGitの使い方を教育」するのは、難しいだろうけど
そのぶん感謝もされるし、また始めての人にどう教えたら本質を理解してくれるのか
というのは、とても有用な情報だと思う。
0576login:Penguin2009/12/12(土) 14:40:22ID:0trcq50X
>>574
良い本だとは思うけど、わかりやすくはないと思う。
まわりを教育するには初心者向けのわかりやすい本が欲しい。
0577login:Penguin2009/12/12(土) 15:31:09ID:1uRf1xZK
>>575,576
日本語で読めるGitの入門書って濱野本、でびあんぐる本、ProGitくらいしかないしなぁ

でびあんぐるのは知らないけどProGit、濱野本の順で読ませるのが分かりやすいんじゃないかな
0578login:Penguin2009/12/12(土) 15:35:54ID:1uRf1xZK
>>575
Gitが難しいのは、思想や観念を理解するのが難しいわけじゃなくて
コマンド/オプションが多すぎる、同じコマンドで2種類以上の役割を持たせてる
あたりが敷居を高くしてる気がする
0579login:Penguin2009/12/12(土) 18:45:28ID:7I0ALriM
>>578
いや、コマンドの数が多いのは確かだけど、普段使うものは数えるほどしか無いよ。
それに全コマンド一覧なんて初心者に見せるか? 下位レベルコマンドは知る必要ないし。

もっとも障壁が高いのはGitの本質を知る事だと思う。特にsvnをやってた人は
「Gitで何が出来るのか」ではなく「svnでやっていたことをGitでやろう」とするので
自分がやっていることがほんとうは何を意味するのかよく分からないまま使うことになり、
「使いづれー」ってなる気がする。
頭を切り替えてチュートリアルを実践するだけで、けっこう分かると思うんだけどな。

>>577
最近初心者向けにGitのことブログで書いてる人も多いね。俺は純正チュートリアルでも
けっこういけると思うんだけどね。最初は会社の同僚からGit教えてもらったんだけど、
これは麻薬ツールの典型なんだが、会得してしまった人は会得してない人に教えるのが
上手くできないんだよね。viとかemacsとか、そう簡単に教えられるものじゃないみたいに。
だから結局は全て自分でチュートリアルやって覚えたけど、最初はどうしてもsvnとかに
なぞらえてしまって、イライラしたな。
0580login:Penguin2009/12/12(土) 19:41:26ID:91i8JXzY
>>578
resetはreset(巻き戻し)とunstage(indexからの削除)に分けるべきだよな
他には何があるっけ?
0581login:Penguin2009/12/13(日) 04:59:08ID:XTGOd8wr
>>579
Webなんかでも、svnのこのコマンドに相当するgitのコマンドは何?って質問が
結構あるしやっぱり本質は理解されてないかんじですね
indexも存在意義がわかれば非常に便利なんだけど。
Winの話題で申し訳ないけれど、TortoiseGitなんかもindexの存在を隠して
ワークツリーから直接コミットするような作りになってるし

>これは麻薬ツールの典型なんだが、会得してしまった人は会得してない人に教えるのが
たしかにそうですねw

>>580
よく使うコマンドだと
checkout ブランチ名(ブランチ切り替え)
checkout -- ファイル名(ファイル取り出し)
reset HEAD^(コミット取り消し)
reset ファイル名(ファイルアンステージ)
reset --hard(ワークツリーの修正取り消し)

0582login:Penguin2009/12/13(日) 12:05:06ID:eLNfVime
言葉で伝えるのは難しくて
チュートリアルをいじって自分の頭の中に動作イメージを作るか
よくできた紙芝居を見せてもらうかしないと
「わかった」とはならなよね。
0583login:Penguin2009/12/13(日) 21:39:57ID:MfgUdwK5
>>580-581
まあでも「alias書けば?」で終わるレベルじゃん
0584login:Penguin2009/12/13(日) 22:56:38ID:hWQ7uDdJ
だよね
0585login:Penguin2009/12/13(日) 23:48:27ID:yRHWt0hz
打つのがめんどいって話じゃなくて分かりづらいって話では?
0586login:Penguin2009/12/14(月) 00:06:09ID:iC7LD6wI
aliasには「分かりやすい名前をつける」という機能もあるんだけど
0587login:Penguin2009/12/14(月) 00:12:42ID:1YNrTAVE
一度やりたいことをしてくれるコマンドを知れば別名も
付けられるんだけどねー。
分かるまでがたいへん。
0588login:Penguin2009/12/14(月) 00:21:12ID:MiMO4S1u
そのaliasを設定するためにはコマンドの使い方知ってなければ
ならないが、話の論点わかってますか?
0589login:Penguin2009/12/14(月) 00:50:41ID:uqSDssQD
aliasでこんなんやっちゃう人もいるみたい
ttp://github.com/blog/564-hub-git-with-github
0590login:Penguin2009/12/14(月) 20:21:03ID:9KU3MLe4
俺はrefspecの表し方がよく分からない。
文脈で書き方が
$ git push repository branch
だったり
$ git merge repository/branch
だったりするところとか。理解しきれてないからなんだろうけど。
0591login:Penguin2009/12/14(月) 22:02:14ID:iC7LD6wI
>>588
そしてある程度分かってきたら、よほど長くない限りalias使わなく
てもよくなるんだけど、誰かが作ってくれたalias集をwebから
持ってきて、... なんて方法も今はあるからね。
0592login:Penguin2009/12/15(火) 00:21:21ID:uU/CeyJd
リモートブランチの扱いが俺も最初はとまどったけど
省略形じゃなくてフルで記述するコマンド体系を覚えてから
省略形を使うようにしたら、すんなり理解できた

$ git push repository branch
は
実は
$ git push repository branch:branch
の省略形で、手元のbranchからrepositoryのbranchへ対してpushしなさいという意味

一方mergeのorigin/masterなどは、具体的なコミットを指しているので
リポジトリ名/ブランチ名となる
0593login:Penguin2009/12/15(火) 04:59:39ID:pR/bRTj/
>>592
もう忘れてたけど確かに俺もそうだわ。
pushはフル書式で理解するまではかなり自信なさげに使ってた。
0594login:Penguin2009/12/24(木) 15:20:36ID:v3JWri2J
1.6.6 released
0595login:Penguin2009/12/25(金) 21:55:28ID:lY3loZi6
stashとresetに頼りまくってる自分の使い方は邪道なんじゃないかと
気になるんだが、indexとかうまく使えば減るだろうか
0596login:Penguin2009/12/26(土) 00:20:32ID:EUZh5OCV
>>595
運用上不都合がなければいいんじゃない?
0597login:Penguin2009/12/26(土) 06:40:51ID:SkSud091
>>595
reset、rebase、resetに頼りまくれるようになってはじめて、一人前のGit使いだと思う。
commitとmergeだけじゃ今までのVCSと変わらないじゃないか。
0598login:Penguin2009/12/26(土) 06:42:53ID:SkSud091
reset、rebase、resetってなんだよorz
reset、rebase、stashのつもりだった。。。
あとrebase --onto、rerereなんか使うとさらに先にいける。
0599login:Penguin2009/12/26(土) 10:39:25ID:AQehkmKr
おーでかーけでーすかー
0600login:Penguin2009/12/26(土) 12:12:59ID:Z6Z05dDL
今だにpush,pull,rebaseの使い分けがわかんないんだよな。
普段git svnでやりとりしてるとrebaseだけで事足りるというだけなのか
0601login:Penguin2009/12/29(火) 01:24:35ID:AAGVKxmF
そりゃgit svnではpush, pullは使いようがないというか、使ったらぶっ壊れるんじゃ。
0602login:Penguin2009/12/29(火) 14:12:54ID:utuwRMGk
他にもgit svnを使っているメンバーがいた場合、
そいつとは、pushやpullができるという
0603login:Penguin2009/12/29(火) 18:19:26ID:erZVRnS3
>>602
でも結局いつかgit svn rebaseするから、ID全部変わるしマージコミット入れられないしで
うぼわーマジsvnやめようぜクソがぁ!
ってなる。
0604login:Penguin2009/12/30(水) 07:38:54ID:kfBW1mPl
しかしsvnに入れた分はちゃんとIDそろうのはすげーと思ったな。
0605login:Penguin2010/01/08(金) 12:31:36ID:S57JTlxp
オリジナルの拡張子を持ったファイルをコミットすると、rawファイルとして認識されるみたいですが、
textファイルだとgitに教える方法はありませんでしょうか?
0606login:Penguin2010/01/09(土) 10:57:40ID:3So5fkbw
>605
gitattributes で crlf と diff をセットだと思う。
0607login:Penguin2010/01/12(火) 19:43:07ID: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が空になってしまいます。
0608login:Penguin2010/01/12(火) 23:43:38ID:914bGyNn
git describe --always
0609login:Penguin2010/01/13(水) 05:50:58ID:+l7m8J7G
git rev-parse HEAD
0610login:Penguin2010/01/13(水) 09:58:54ID:/kr/i6EO
github は、タグからアーカイブを生成する場合、アーカイブのファイル名にタグ名を含めてほしい。
0611login:Penguin2010/01/18(月) 10:24:04ID:xAKlwsjN
example.log っていうファイルがあって
このファイル自体はpushされていて、でも今後の変更分についてはpushしたくないってとき、どーするのが正解?

git rm --cached して版管理自体をやめるわけにはいかないんだけど
0612login:Penguin2010/01/18(月) 11:48:43ID:9pALEWP2
ignore すれば?
0613login:Penguin2010/01/18(月) 11:58:05ID:xAKlwsjN
>>612
すでに版管理されてるからmodified filesとしてあがってきちゃう
commit対象としてのみ無視したいんだけど、ignoreできるの?
0614login:Penguin2010/01/18(月) 20:36:24ID:KAj8+0o6
>>611
ローカルリポジトリでバージョン管理するのを止めれないなら
ignoreできないから、簡単な方法はないでしょう。
push用のブランチを作り、手でrebaseしてそのファイルへの修正が
入らないようにしてからpushするとかしか思いつかないけど。
0615login:Penguin2010/01/18(月) 20:43:21ID:2FuAr7Gb
push 用の branch とローカルでの example.log の変更を commit する branch とを作ればいいんじゃないかな。
■ このスレッドは過去ログ倉庫に格納されています