[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2ch.scのread.cgiへ]
Update time : 12/19 22:47 / Filesize : 316 KB / Number-of Response : 998
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Git 12



1 名前:デフォルトの名無しさん mailto:ageteoff [2015/03/23(月) 13:35:13.83 ID:aBYp+bVs.net]
ソースコード管理を行う分散型バージョン管理システム、Gitについて語ろう。

Git - Fast Version Control System
git-scm.com/

◆関連サイト
Pro Git - Table of Contents
git-scm.com/book/ja
Git入門
www8.atwiki.jp/git_jp/

◆前スレ
Git 11
peace.2ch.net/test/read.cgi/tech/1416195050/

170 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 08:53:53.30 ID:aih7mS+Y.net]
>>165
人じゃなくて環境だろ
そもそもネットワークとか言い出したのは >>145 だし
>>166 みたいな状況がよく引き合いに出されるけど、そんな状況滅多にないだろ
飛行機でさえ WiFi 使えたりするしな

171 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 11:28:04.71 ID:jprZbhPv.net]
>>168
だからそんな状況がめったにないのは、
お前という人の話だろ。

お前ん中ではそうなんだろうなの話をしているだけって気づけよw

172 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 11:29:34.47 ID:jprZbhPv.net]
社外にいる時に会社のネットワークに
3G経由でVPNでつないで、SVNでブランチ切り替えとか
したくないわけでw

173 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 11:48:01.05 ID:LbK5Z9ys.net]
ネットワークが必要になる状況ってgitでもsvnでも同じ状況なんじゃないの?

174 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 11:48:46.02 ID:aih7mS+Y.net]
>>169-170
> お前ん中ではそうなんだろうなの話をしているだけって気づけよw
そのまま返すわ w
そもそも、今時な会社で社外で開発とか無職の発想としか思えん

175 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 11:53:57.86 ID:aih7mS+Y.net]
>>171
git はローカルにリポジトリ持ってるからネットワークに繋がってなくてもコミットできる
特定の場合に便利だが、社内だとほとんど意味ない
ネットワーク繋がないとほとんど仕事ならないから

176 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 12:05:11.81 ID:LbK5Z9ys.net]
gitのコミットとsvnのコミットは違う機能だと認識してるんだけど
svnのコミットに相当するのはgitのpushでしょ

177 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 15:03:59.96 ID:aih7mS+Y.net]
>>174
> svnのコミットに相当するのはgitのpushでしょ

そう言う言い方するなら、ネットワークが必要となる状況が違うってこと
svn はネットワークに繋がってないとほぼなにもできないから

178 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 15:43:26.04 ID:ZDatv+YP.net]
今いるのがtestブランチなんですけど
masterブランチでコミットしたファイルを修正したいんです。
いったんmasterブランチに戻ってcommit --amendした場合、どうやってその更新内容をtestブランチに取り込めばいいですか?



179 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 16:28:50.45 ID:jprZbhPv.net]
>>172
> そもそも、今時な会社で社外で開発とか無職の発想としか思えん

これだけオープンソースがたくさんある時代に何いってんの?w
え? お前のコード、極秘なん?

お前ん中の世界は狭いですねw

180 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 16:35:25.60 ID:E+mDe4Go.net]
>>176
masterの更新をtestに取り込みたいのなら、普通はmergeするだろ

181 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 18:06:59.33 ID:aih7mS+Y.net]
>>177
オープンソースがどう関係するのか知らんけど、仕事のソースをリポジトリごと社外に持ち出すとか普通ないだろ
社外秘って言う言葉も知らんようだし、マジで無職なのかもな w

182 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 18:53:07.92 ID:vaK5h5cH.net]
>>177
GPLや趣味の開発と、普通の会社での開発は違うから、
自分が書いたコードが極秘になるのは良くあることかと

183 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 19:01:20.97 ID:9epD2/0o.net]
今は下手したら自分のマシンに開発環境すら入れさせてくれんし
仕事の持ち出しが自由だとしてもそれがメリットに感じるのは若い内だけだよ
年取ってきたらそんなスタイルで仕事に向き合ってもまずいい事は無い
プライベートと仕事はこれでもかって程に線を引いておいた方が
最終的な効率が上がったりもするし

184 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 19:29:20.47 ID:RWhwDI1t.net]
cvsやsvnの頃もリポジトリに繋がらない環境で仮にコミット出来るようにするソフトがあった。
つまり需要はあった。
今時とか傾向の話しても、需要がゼロになるわけじゃない。
嫌な人はsvnでも何でも勝手に使っとけという話。

185 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 21:19:45.95 ID:aih7mS+Y.net]
>>182
> つまり需要はあった。

そんな需要がどれ程あるんだ?

って話なのは理解できてる?

186 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 21:28:56.04 ID:4o2Mh2tF.net]
好きにすりゃいいもんを金科玉条のごとく押し付ける連中はなんなんすかね
ネットで偉そうにしなきゃ死んでしまう病気にでもかかってるんですか?

187 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 22:31:52.69 ID:RWhwDI1t.net]
>>183
お前が無理矢理そういう無意味な話に持っていきたいのはわかった。
サードパーティ製だったのが根幹に含まれたものが普及したんだから、需要わかるだろ。

188 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 22:42:29.28 ID:d2KPF5yq.net]
ところで、話は変わるんだけど
ローカルにコミット履歴をあまりたくさん持ちたくない
現状普通にやってると、自分のワークにも過去のコミットが
全部入っちゃうのでなんとかしたい



189 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 22:50:41.60 ID:vaK5h5cH.net]
>>185
180が言ってるのは、オープンソースとか趣味じゃなくて
社内で開発してる間はあまり需要がない、って話じゃないかと

190 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 23:12:28.79 ID:RWhwDI1t.net]
>>187
企業でgitが普及してないと思うってこと?

うちは客先へも関係会社ともgitでやり取りしてるが。

191 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 23:20:28.85 ID:vaK5h5cH.net]
>>188
客先にソースコードをやりとりするって、一体何をしてるの?

192 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 23:25:08.42 ID:s5hHym/Z.net]
>>185
当時はネットワークがプアだったけど現在は違うだろ?
って話
git のローカルコミットを dis ってる訳じゃない

>>188 も同じ勘違いをしてる

193 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 23:27:25.03 ID:s5hHym/Z.net]
>>189
受託だとソースごと納入はよくあるから、ソースのやり取りはあると思う
直接 git でやり取りするのはでかい会社だと珍しいと思うが

194 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 23:37:56.91 ID:nYC3Hc//.net]
すごいな…「ネットワークが不安定な状況になるわけがない、不安定になるような奴は無職!そんなの考えなくてもいい(キリッ」とか言うやつがいる会社の作るものなんて、絶対触りたくねぇwww

社内ネットワークが不安定になった時、こいつの作ったものは全部メチャクチャになっちゃうんだろうな

195 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 23:40:19.01 ID:RWhwDI1t.net]
>>190
gitが普及する前でもネットワークがプアとか、よっぽど小さい企業の話じゃないの。
だがそれでもdiffのレスポンスはローカルとネットワークで大きく違う。
俺はローカルコミットの話はしてない。

>>189
開発。

196 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 23:52:41.38 ID:vaK5h5cH.net]
>>189
客先っていうのユーザーじゃなくて親会社、自分が子会社、関係会社が孫会社だったら、
親会社にソースを渡すのはありそうですね

でも仮にそうなら、それは親会社が提供する社内ネットワークの範囲内だから、
185の状況は親会社が偶然gitを使ってたから185はgitの各種機能にありつけてるけど、
ネットワークが高速で安定してるだろうし別にSVNでも良かったっていう風にも見えるね

197 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 23:53:54.46 ID:jjWEFxJy.net]
納品にgitとはな

198 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 23:55:50.82 ID:vaK5h5cH.net]
>>189
開発は分かるんだけど、客先がユーザーなら、自社製品のソースコードを公開してしまう意味が分からなくて・・・
どうして自社のソースコードをユーザーに公開しなきゃならない状況に置かれてるのかを知りたかった



199 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 00:09:45.89 ID:zXiy4YdA.net]
>>192
このスレに初めて書き込むけど、貴兄の会社の社内ネットワークってそんなに不安定なの?
うちの会社は国内海外の関連会社が社内ネットワークにつながってるけど、
トラブルなんて年に一度もおきないけど。

それから、社内ネットワークが不安定になったとして、何で作ったソフトがめちゃめちゃになるの?

200 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 00:13:27.21 ID:nOXR22gF.net]
>>192
> ネットワークが不安定な状況になるわけがない

とは書いてないが、マジでネットがダウンしたらほとんど仕事にならないだろ
うちは電話も IP だし、社内システムはほとんど Web だし手も足もでなくなる
そもそも会社で開発してる奴は四六時中コーディングしてる訳じゃないから、コーディングだけできてもしょうがないしな

> 社内ネットワークが不安定になった時、こいつの作ったものは全部メチャクチャになっちゃうんだろうな

この発想が無職の発想 w

>>193
リーナスは Linux のソースコード規模に対しては遅いと考えていたみたいよ

201 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 00:19:15.46 ID:nOXR22gF.net]
>>196
受託開発したことないの?
例えば銀行とかのシステムって銀行自体が開発してるんじゃなくて(実際は間に色々入るけど)、開発会社にこんなもの作ってくれって依頼するわけ
当然その銀行の専用品だし、開発費は銀行持だからソースコードも含めて銀行に納めるという契約形態があるってこと

202 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 00:51:27.53 ID:eHprCcSu.net]
受託開発なら>>193は親会社の意向でgitを使わされてるだけで
親会社が提供したgitのいちユーザだが管理者ではないといったところか

203 名前:デフォルトの名無しさん [2015/04/12(日) 01:03:54.01 ID:m18WDRtR.net]
普通とか一般的にとか色々言ってるけどさ
お前らってIT企業を何社も転職して色々な現場を見てまわったの?

204 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 01:06:55.19 ID:BQBr0rdt.net]
>>200
親会社ってなんの話だ?
受託って資本関係にない会社からの依頼(注文)もあるぞ(って言うか、うちだとその方が多い)
あと、受託した仕事の一部または全部を他の会社(いわゆる外注さん)に頼むこともあるし

205 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 01:10:51.77 ID:bxSemNlo.net]
>>201
自分の会社以外にお客さん、外注さん、グループ会社とかの人と話したりするから
全部を知ってるという訳じゃないけど、環境という面だとそんなに突飛な環境ってあんまりないし

206 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 01:16:05.70 ID:eHprCcSu.net]
>>202
親会社じゃなくて発注元って言うのが正しいんだろうが
言いたいことは変わらないから気にしないで

207 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 01:19:28.61 ID:w/X68p6y.net]
>>201
同業者と情報交換したりしないのか?

>>200
提案して客に使わせる方が多いかな。
gitだと大体すんなりOKしてくれる。
そのどっちが上とかいう思考だから分散型に適応できないんじゃないか。

208 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 01:28:23.59 ID:eHprCcSu.net]
>>203
お客さんとはユーザーじゃなく発注元だろうか

自分はインドの関連会社とアメリカの関連会社に出向して働いたことがあるが
環境は発注元の意向の影響を強く受けてた

自分がそこから動かずに話を聞いて回っても
おそらくみんな「実は発注元の意向」で揃ってしまうのでは



209 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 01:28:28.60 ID:BQBr0rdt.net]
>>205
> そのどっちが上とかいう思考だから分散型に適応できないんじゃないか。
とか書きながら、
> 客に使わせる方が多いかな。
とか、上から目線で笑たわ

こんなアホが提案してきたら即出入り禁止にするわ

210 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 01:34:34.47 ID:BQBr0rdt.net]
>>206
ケースバイケースとしか言いようがない
環境は全て自社で成果物のみ納入もあるし
環境は自社だけど発注元とソースを共有してやるケースもあるし
請け負いと言いつつ、客先に入って客先の環境で開発とか、偽装だろそれってのもある(と聞いたことがある、と言っておこう w)

211 名前:173 mailto:sage [2015/04/12(日) 01:53:55.45 ID:KekZ3jxC.net]
>>178
mergeだとtestブランチに余計なログが溜まってしまいます

212 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 01:54:20.89 ID:eHprCcSu.net]
>>207
確かに
学生か研究者が想像で話してるだけだろう

>>208
自分も似たようなシーンを見たことがある
関連会社さんと契約形態が変わるタイミングで特に面白いことになりやすい

213 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 01:57:45.56 ID:4195b+YJ.net]
でもまあプログラミングは仕事だけでやるもんじゃないし、
個人のプロジェクトとかでネットワークがない、もしくは
遅かったり不安定だったりする場合があるので
そういうい場合にgitが役に立つわけよ。

214 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 02:25:49.71 ID:eHprCcSu.net]
>>211
そもそもこれは>>177から始まった「企業がgitを使う理由」が
イミフな方向に流れただけだから気にしないで

215 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 02:54:32.65 ID:4195b+YJ.net]
>>177には企業がって書いてないけど?
まあ企業もオープンソースの開発してますがね。

216 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 03:17:08.50 ID:w/X68p6y.net]
>>207
プライドだけは高いんだなw
一番面倒なタイプだわ

217 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 06:29:26.07 ID:RIZsoiA7.net]
>>209
ならばリベースだな

218 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 07:35:01.53 ID:BQBr0rdt.net]
>>211
そう言う機会が全くないとは言わないけど、個人のネットワーク環境も改善してるからなあ
MVNO 使って 1,000円前後で移動中でもネットワークに接続できるようになるとは思わなかったよ

>>213
>>170 に会社のって書いてるから
>>214 と同一人物かどうかは知らんけど、両方とも今時の会社の開発環境をよく知らないんだと思う



219 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 08:30:26.39 ID:OxabzWT0.net]
いやビックリした、年に一度もトラブらないからネットワークが不安定になった時の事を考えるのは無職なのかぁ〜。笑いとまらねぇwww

君相当レベル低い会社でしょ?基幹とか触れた事ないでしょ?数億円程度の案件で「俺って超デカイ事やってるんだぜ?」とか言ってるんでしょ?www

220 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 09:01:40.87 ID:4195b+YJ.net]
いやビックリした、年に一度もトラブらないからバックアップの事を考えるのは無職なのかぁ〜。笑いとまらねぇww
いやビックリした、年に一度もトラブらないからセキュリティの事を考えるのは無職なのかぁ〜。笑いとまらねぇww

無職がいっぱいですねwww

221 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 09:04:42.03 ID:4195b+YJ.net]
まあそういうことだよね。

○○という技術を選んだために
ネットワークがないと使えませんでした。

俺のせいじゃない。○○が悪いんだ。
とかいっても、客はそんなこと関係ないわけで。

そこでgit使っていればよかっただろ?って客に言われでもしたら。
う、うるさい!俺はgitは使えないんだって声に出して言えないわけで。

世の中に優れたツールがあるのなら
それに移行するのも仕事のうち。

222 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 09:20:51.12 ID:w/X68p6y.net]
>>216は自分の会社の環境がスタンダードだと思ってるのか
重症だな

223 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 09:56:48.04 ID:BQBr0rdt.net]
>>217-219
一生懸命考えたんだろうけど、アホみたいだからやめた方がいいよ
一年に一回程度のダウンに備えたシステムにするより、その場合にどう運用するかを考えた方がいい
あと、>>198 にも書かれてるがコーディングだけやってる訳じゃないから git だけ使えてもあまり意味ないし

>>220
同業者に聞いてみなよ w
大体似たようなもんだぞ

224 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 09:58:21.90 ID:4195b+YJ.net]
>>221
あのー。ノートパソコンでいつもと違う場所から
githubを触るってことは普通にあるんですが?

その時にブランチ切り替える程度で待たされるんじゃ
いらいらしますよね。

gitならブランチ切り替えはディレクトリ移動と
変わらない速度で行えます。

225 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 10:00:27.69 ID:4195b+YJ.net]
いかんいかん。

また屁理屈に引っかかるところだった。

結局「俺は」問題ないっていう人の話をしていて、
ツールの良し悪しの話じゃなくなってるね。

ま、ツールじゃgitが優れていることを否定出来ないんで
必死で、俺は、俺は! 俺はぁ!!! なくても平気
っていう屁理屈でごまかしてるw

226 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 10:02:29.97 ID:w/X68p6y.net]
>>221
ではどんなのか書いてください。
エンタープライズでも組み込みでも使われているその環境とやらを。

227 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 10:11:32.03 ID:OxabzWT0.net]
多分だけど、こいつは学生か、大学のサークルっぽいベンチャーなんだと思うぞ。

228 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 10:45:13.86 ID:BQBr0rdt.net]
>>222
> あのー。ノートパソコンでいつもと違う場所から
> githubを触るってことは普通にあるんですが?

で、そのノートパソコンは今時ネットに繋がってないの? w

>>224
どのレベルで書けって言ってるんだ?
情シスの人間じゃないから基幹の構成とか聞かれても困るんだが...

>>225
はいはい、
ぼくにとってはすうおくえんのあんけんなんてたいしたことないんぞ
ってか w



229 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 12:06:37.95 ID:eHprCcSu.net]
>>226
メーカー系の子会社で5年以上働いてる
>>205
大学のサークルっぽいベンチャーで働いてる

230 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 13:18:51.68 ID:mwW7jACh.net]
ネットワークおじさん達はまだやってたのか
それより事の発端である>>137の動機が気になる

231 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 13:44:16.44 ID:eHprCcSu.net]
>>219
>そこでgit使っていればよかっただろ?って客に言われでもしたら。
>う、うるさい!俺はgitは使えないんだって声に出して言えないわけで。

そこが違うな
発注元は「うちがSVNを使ってるんだからSVNを使え」と言うだけ


じゃあ>>205の話は一体なんなのかというと
「自分がいる研究室の教授にgitを提案した話」をしてるだけだろう

(話を膨らませ過ぎたせいでイミフなことになってはいるが・・・)

232 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 14:06:46.60 ID:RIZsoiA7.net]
Git限定の話じゃないみたいだし、仕事とVCSの話はこっちのスレでやってくれよ

バージョン管理システムについて語るスレ10
peace.2ch.net/test/read.cgi/tech/1393147031/

233 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 14:27:58.18 ID:4195b+YJ.net]
>>226
> で、そのノートパソコンは今時ネットに繋がってないの? w

つながっていても遅いですよ?

ブランチ切り替えごときで
数秒も待たされるなんて
やってられないですからねw

234 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 14:30:13.71 ID:BQBr0rdt.net]
>>231
そうなんだ、辛いね w

235 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 14:56:47.47 ID:eHprCcSu.net]
>>232
趣味でやるなら我慢できなくても会社でやるなら我慢しなきゃならない事がある
って概念が>>231にはないのだろう

236 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 15:05:00.40 ID:4195b+YJ.net]
使いにくいツールを頑張って使う

根性があるって評価されるよ!(大爆笑)


早く仕事しろや

237 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 15:17:57.99 ID:w/X68p6y.net]
>>226
どのレベルかわからないで、どこも環境一緒だとか言ったのか。
話にならないな。

238 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 15:20:36.24 ID:w/X68p6y.net]
>>233
経験ない新人じゃ提案して改善とか恐れ多いもんな。



239 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 15:26:16.19 ID:+Dwi8kJe.net]
レガシーコスト

240 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 15:26:42.33 ID:BQBr0rdt.net]
>>233-234
別に git 使うなって話をしてる訳じゃないんだけどな w

241 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 16:00:55.68 ID:BQBr0rdt.net]
>>235
> エンタープライズでも組み込みでも使われているその環境とやらを。
組み込みと言っても、いろんな種類があるから、単に環境説明しろとか言われても困るわ
まさか個々に説明しろとでも言うのか w
ただ、言えるのは今時特殊な場合を除いてネットワーク接続されてるのは当たり前ってこと

242 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 16:16:25.20 ID:w/X68p6y.net]
>>239
いやどこでも一緒なんでしょ?

繋がってれば何でもできると思ってるのか。
セキュリティポリシーとか、各社違うと思うが。

243 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 16:41:41.04 ID:BQBr0rdt.net]
>>240
> いやどこでも一緒なんでしょ?

誰がそんなこと言ってるんだ?

> 繋がってれば何でもできると思ってるのか。

権限さえあれば、開発者から開発に関係することはできるだろ

> セキュリティポリシーとか、各社違うと思うが。

で、開発に使えないセキュリティポリシーってなに? w

244 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 17:00:52.93 ID:4195b+YJ.net]
>>238
はい。ネットワーク必須なものより、
ネットワークを使っても使わなくても出来るし、

ネットワークがどんなに早くても(サーバー側の処理もあるし)
ローカルディスクの速度にはかなわないので

gitの方が優れており快適に開発できるって話をしてます。

245 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 17:54:56.18 ID:BQBr0rdt.net]
>>242
なるほど、関係ない話にわざわざ割り込んできてアホさらしてたってことね
了解した、後は勝手にやっててくれ w

246 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 17:58:37.01 ID:4195b+YJ.net]
>>243
さようなら。これで話は解決しました。

247 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 18:21:31.75 ID:eHprCcSu.net]
>>243
>>205にしても>>244にしても「自分は下請けの一技術者の立場でありながら
発注元にソース納入方法を提案できるほどのスーパーエンジニアだという妄想」
を絡めながら話をするもんで話の流れがどうしてもこじれやすい

正直言ってこいつらを相手に実運用がどうこうの話をしたところで無駄だと思う

まともな会社に入れるように就職活動頑張ってくれとしか言いようがない

248 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 18:42:23.71 ID:PnxXuVRG.net]
>>245
それって、あんたの妄想ですよね?w

それに世の中にはスーパーエンジニアがいるわけで、
自分が必要ないから、必要ないんだ!という主張は
個人環境の問題であって、世界が狭いとしか思えませんね。



249 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 18:48:44.72 ID:O3Q2YdhU.net]
ffのときといいVCSの敷居もすいぶん下がったもんだな

250 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 19:21:33.74 ID:eHprCcSu.net]
企業でgithubを使ってるとしたらどういうとこだろう
国内メーカー系だと機密情報扱いのソースコードを社外サーバに置くのが無理だよな

課金スマホゲーを作って儲けたい小さいベンチャー企業とかだと使ってたりするのだろうか

251 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 19:41:13.93 ID:8HUyaP1H.net]
エンタープライズならまあ

252 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 20:21:44.96 ID:PnxXuVRG.net]
> 企業でgithubを使ってるとしたらどういうとこだろう
githubみればわかるんじゃないですか?

253 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 20:23:06.86 ID:w/X68p6y.net]
>>241
> で、開発に使えないセキュリティポリシーってなに? w

意味が不明です。
ポリシーに合わせて開発方法も変えるものではないの?

> 誰がそんなこと言ってるんだ?
218 デフォルトの名無しさん sage 2015/04/12(日) 09:56:48.04 ID:BQBr0rdt
>>220
同業者に聞いてみなよ w
大体似たようなもんだぞ

254 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 20:28:26.94 ID:w/X68p6y.net]
>>245
スーパーエンジニアじゃなくても、顧客がIT系じゃない一般企業とかなら、サーバの選定とかから提案するよ。

255 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 20:44:27.70 ID:eHprCcSu.net]
>>252
顧客が発注元じゃなくてIT系じゃないユーザなら
ソース管理ソフトの提案をする意味がなおさら分からん

256 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 21:04:58.26 ID:w/X68p6y.net]
>>253
ウェブ系やってるから、よくデザインは別のとこがやる。
そうでなくても、メンテを他の会社が請け負う可能性もあるし、数年後にまたうちが請け負うかもしれない。
履歴とはそういう時のためにあるんじゃないのか。
自分のためだけで、顧客のためという考えはないのかな。

257 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 21:23:43.78 ID:BQBr0rdt.net]
>>251
> ポリシーに合わせて開発方法も変えるものではないの?
だから、その開発方法を変えないといけないポリシーってなに?
一時社外からのアクセス云々で会社間のやり取りでゴタゴタしたことあったけど、最近はそう言うところも整備されてるのが普通だし
会社によっては社外のクラウド使う/使わないの違いがあったりするけど、開発方法には影響しないようにしてるし

> 同業者に聞いてみなよ w
> 大体似たようなもんだぞ

(VxWorks + ARM の機器組み込みやってる会社同士とか、Windows のアプリケーション作ってる会社同士では)
大体似たようなもん
って言う話だぞ
そこまで説明しないとダメなの?

258 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 21:28:24.48 ID:xjf6EDI6.net]
もう結論何が言いたいのか分からんただの揚足の取り合い



259 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 21:43:40.95 ID:eHprCcSu.net]
>>254
Web業界だとそんな風になってんのね
自分は製品開発でソースコードはビジネスのコアになる機密情報だからそれを客に公開するっていう発想がなかった

Webだと作ったものは一社ごとの専用品で個別の規模は小さく発注元も他の発注先も技術が分かる人間は絡まない
ソースコードはユーザから(発注元からも客からも)ほとんど丸見え
ソースコードに技術的な秘密がない
万一gitのアカウントが割られて中を見られても損をするのは発注元だけ

そんな状況だったら自分からgitを提案するってのも確かにありうるな

260 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 22:07:30.29 ID:PnxXuVRG.net]
>>257
> 万一gitのアカウントが割られて中を見られても損をするのは発注元だけ
gitじゃなくてgithubだろ

別にgit自体はオープンにしなくても使える。

261 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 22:15:46.94 ID:eHprCcSu.net]
>>258
githubかどうかは>>254に直接聞きますか

個人的にはgithubだと思ってるが
>>257みたいなケースだと案件規模が小さすぎてそれぞれの客に
gitサーバを立ててもらうのが理にかなってないように感じられる

262 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 22:25:39.81 ID:xjf6EDI6.net]
不毛なやりとりはもうやめようよ

263 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 22:36:59.55 ID:w/X68p6y.net]
>>255
開発プラットフォームごとに違うってことね。

> 今時の会社の開発環境をよく知らないんだと思う

今時のプラットフォームはあなたの会社の一種類以外、話から除外されるってことね。やはりあなたの会社がスタンダードなんだね。

>>257
googleやfacebookでもスクリプト言語使われてると思うけどね。難読化しなきゃだね。
VPSとかsshかけてたりするから、破られたらgitでも何でも関係ないけどね。
話の発端に戻って、分散でないsvnだと安全になるの?

264 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 23:00:10.10 ID:PnxXuVRG.net]
知り合いから聞いたがとある某大手会社の子会社は
Windowsしか使えないという底辺クラスの技術力なのに
gitを導入しようとしているらしい。もちろんGUIで。
Linuxの導入は誰も使えないから認められないらしいw
世の中にはこういう底辺だって有るんですよ!

265 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 23:02:47.20 ID:PnxXuVRG.net]
>>261
> 話の発端に戻って、分散でないsvnだと安全になるの?
なるわけがない。遅いくて過去の履歴が無かったりするとはいえ
ローカルPCにソースコード全部持ってきてるんだから

266 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 23:03:21.34 ID:eHprCcSu.net]
>>261
スクリプト言語っていってもユーザに見えないサーバ側のスクリプトと
ユーザに見えるクライアント側のスクリプトじゃ話が違うだろうし
難読化したらあなたが言ってる「客のためを思ったソース公開」じゃ
なくなるな

>話の発端に戻って、分散でないsvnだと安全になるの?
何を発端と言ってるか分からんが>>248ならgithubの話だな

言っても分からんとは思うが国内メーカーは自分が作る「製品」の
ソースコードはビジネスの核だとみなしている
それが自分たちの管理が届かない社外に置かれることを嫌がる傾向が強い

267 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 23:07:12.80 ID:PnxXuVRG.net]
そこで、gitを使って、社内にだけ
ソースコードを置くわけですよ。

268 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 23:08:58.08 ID:PnxXuVRG.net]
念の為に言っておくが、googleやfacebookがやってるのは
難読化じゃない。ファイルサイズを削減するために
単語を短く置き換えてるだけだ。

難読化というのは、無意味なコードを入れたりして
コードを理解づくらくすること。



269 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 23:13:11.50 ID:eHprCcSu.net]
>>265
そうすると、今度はSVNでいいじゃんって話になる
その話が>>177からずっと続いている

270 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 23:17:45.05 ID:PnxXuVRG.net]
>>267
は? おかしくね。

svnでもgitでもどちらも
安全でも危険でもない。
これがここまでの結論だが?

安全か危険かで差は出ないんだからこの話は同じ。

別の理由でどちらが優れているかを語るべきだろ

271 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 23:25:58.07 ID:w/X68p6y.net]
>>259
新規鯖でBTS連携が多いな。結局開発サーバ必要だし。
客によってgithubとか他の商用のもあったりするけど。

272 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 23:30:55.66 ID:uj+lty2x.net]
gitサーバーを建てるのが難しいって
本当に底辺だよね。

だってさ、

1. PCを用意
2. Linuxのインストール(インストーラーから)
3. gitlabのインストール (インストールパッケージが用意されてる)
4. gitlabにログイン

これだけで終わりなんだから。

もう難しいかどうかじゃない。
単に面倒だからやりたくないという
めんどくさがりなだけだよ。

273 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 23:32:31.69 ID:eHprCcSu.net]
>>268
>別の理由でどちらが優れているかを語るべきだろ

その必要は無い
gitがあるのにSVNとかを使い続ける理由は「乗り換えなくて済む」
「どうしてもgitに乗り換えなければならない理由がない」なんだから

じゃあgitの勝ちって言ってみたって結局gitは使われてない
gitを使わない経営者が頭悪いわけでもない

その状況を含めなければ比較のしようがないしそれは無理だろう

274 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 23:37:37.38 ID:uj+lty2x.net]
> gitがあるのにSVNとかを使い続ける理由は「乗り換えなくて済む」

あー、こりゃだめだ。負けるよ?

だって他の所は、最初っからgit使ってる。
優れたツールをさ。

優れたツールから「乗り換えなくて済む」人たちに
どうやって対抗するのさ?w

まあ、定年まで生き延びればそれでいいって
考えなんだろうけどさ。

275 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 23:38:35.63 ID:w/X68p6y.net]
>>268
> 別の理由でどちらが優れているかを語るべきだろ

その流れに進むのだと、>>230 だな。

わざわざgitスレに来て分散要らないと、適応できない人が言ってるだけ。
gitで中央管理するのは構わないと思うけど、本来の使い方でないので一手間増えるのが不満なんじゃないかな。
>>182 嫌な人はsvnでも何でも勝手に使っとけという話。
で終わりだと思うけど。

276 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 23:42:14.40 ID:uj+lty2x.net]
>>273
> gitで中央管理するのは構わないと思うけど、本来の使い方でないので一手間増えるのが不満なんじゃないかな。

えー? 何いってんの? 中央管理は必要だし、
git使ってるプロジェクトのほぼ全て、
中央と呼ばれるところがあるじゃん。
公式リポジトリのことだよ。

お前全然わかってないよ。

277 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 23:50:17.52 ID:w/X68p6y.net]
>>274
はいはい。

278 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 23:51:41.80 ID:eHprCcSu.net]
>>269
デザインを別会社に発注するんならソース管理の責任は発注元もちだからサーバは客側に置かれるんだよね
客に○十万くらい払ってもらって社外公開用gitサーバを立てる感じか
小規模案件でも「一見して無駄金」を払ってくれたりするものなんだな
それを最終的にWebサーバに転用するから平気だってことなんだろうか・・・

>>272
つまりそれがベンチャーと国内メーカーの違い
国内メーカーもそれを分かってて使えない個人を淘汰するがそのスピードは遅い
ベンチャーだと労働組合がないしそもそも会社ごと淘汰されるのでスピードが速い

はじめはどの会社もベンチャーだった
生き残った会社は信頼性を持ち仕事の進め方もこなれてくるし良い人材も来るが
実は長く生きたこと自体が欠点だ



279 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 23:52:17.73 ID:w/X68p6y.net]
今までのレスを読まずに、別の意味持ち出されてもな。

280 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 23:57:32.09 ID:w/X68p6y.net]
>>276
お前が専用サーバでないとgit運用できないのは良くわかったよ。
そして、サーバの選定できないことも。

281 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 23:58:15.67 ID:eHprCcSu.net]
>>273
実際はそんな単純な「一手間」とかの話しじゃなくて
使えないおっちゃんにコミットは何かプッシュは何かを教育する事が困難
gitを使えないからって理由でクビにすることはできないし

282 名前:デフォルトの名無しさん mailto:sage [2015/04/13(月) 00:00:16.82 ID:qmARc52C.net]
>>278
何に切れてるのかさっぱり分からん
少なくとも自分は「製品開発」だからWebサーバの選定はしないしできない

283 名前:デフォルトの名無しさん mailto:sage [2015/04/13(月) 00:04:23.76 ID:zNUrQ3MR.net]
>>279
クビにするかどうかは、経営者の判断することなので知らん。
リーダーだった場合、使用しているツールを使えない技術者が来たからといって、ツールを変えるようなことはしない。閑職に追いやる程度。
git程度を使えない技術者は終わってると思うが。最低限な。

284 名前:デフォルトの名無しさん mailto:sage [2015/04/13(月) 00:14:36.04 ID:qmARc52C.net]
>>281
git程度を使えない技術者って、40を超えてくると時々見かけそうな

仕事ができて偉くなるオッサンはみんな過去の経験を活かした人材マネージメントの方に回ってしまうし
仕事ができなくて偉くならないオッサンは何も出来ない

仕事ができて偉くならずに担当者として先頭を突っ走るバリバリの技術者ってのはホント少ない

285 名前:デフォルトの名無しさん [2015/04/13(月) 00:19:44.73 ID:4JvI4/ec.net]
マ板あたりにアンチGitスレでも立てたらいいと思う

286 名前:デフォルトの名無しさん mailto:sage [2015/04/13(月) 00:26:29.81 ID:NT6jaiFf.net]
相手する方もなんでわざわざ相手するのかね
放置すりゃいいのに相手するから生きながらえる

287 名前:デフォルトの名無しさん mailto:sage [2015/04/13(月) 01:06:13.44 ID:zNUrQ3MR.net]
>>280
なぜ切れていると思い込んでるのかサッパリだ。
できないなら>>276は妄想ってことだな。

>>282
gitのリポジトリの構成を決めろとか言うわけではない。
決まったオペレーションができれば十分。最低限。
偏ってる企業だと1人1プロジェクトとかかも知れないけど、そんな老い先知れた企業のことは知らん。

288 名前:デフォルトの名無しさん mailto:sage [2015/04/13(月) 01:25:41.23 ID:l/TWvXzv.net]
驚くだろうが、この業界にいて、
パソコンにOS(Linux)のインストールも出来ない
素人がいるのも事実。



289 名前:デフォルトの名無しさん mailto:sage [2015/04/13(月) 02:06:56.36 ID:qmARc52C.net]
>>285
>>276は妄想じゃなくてあなたへの質問だったのだが急に答えるのをやめたから切れたのかと思った
漠然と否定するんじゃなくて訂正してもらえるとWeb系エンジニアの一つの実情を知れるので勉強になる

>>286
Linuxのカーネルを改造してる技術者がWordの蛍光ペンの付け方を知らないってことがあったので
自分ができることをそいつができないから「技術者として終わってる」というのは案外そうでもないと思ってる

290 名前:デフォルトの名無しさん mailto:sage [2015/04/13(月) 03:19:23.81 ID:zNUrQ3MR.net]
>>287
仮想とか使ってるとこは、設定するだけ。
性能は必要ないので、借りても月千円とか二千円で要件は満たせる。
これ以上はスレチ過ぎるのでどっか他で聞いて下さい。

知らないと出来ないは違うんじゃ。

291 名前:デフォルトの名無しさん mailto:sage [2015/04/13(月) 06:05:45.95 ID:Nl26Y8lL.net]
>>261
> 今時のプラットフォームはあなたの会社の一種類以外、話から除外されるってことね。やはりあなたの会社がスタンダードなんだね。

いったい何を言いたいのか全くわからんのだが w

292 名前:デフォルトの名無しさん mailto:sage [2015/04/13(月) 06:46:15.23 ID:NPPeHBbv.net]
>>288
Linuxのインストールなんて「知ってりゃできる」レベルだろ?

293 名前:デフォルトの名無しさん mailto:sage [2015/04/13(月) 09:12:02.50 ID:l/TWvXzv.net]
>>290
だが恐ろしいことに、出来ないという人がいるんだよ。
自称技術者なのにな。本当に可哀想。

294 名前:デフォルトの名無しさん mailto:sage [2015/04/13(月) 10:33:40.14 ID:qmARc52C.net]
>>288
なるほどケタ違いに安かったんだ
だからあなたがやってるみたいな「極めて小規模案件」にも対応できるのか

スレチなのは確かだがこのスレはgitの製品機能だけじゃなく
gitの運用シーンとその背景(マネジメントやら業務の特性やら)がごちゃまぜに話されてるから
前からずーっとスレチだったという気がしないでもない

295 名前:デフォルトの名無しさん mailto:sage [2015/04/13(月) 12:11:13.75 ID:5Ev+MSHp.net]
gitサーバ=gitlabな人とまともな話ができるわけないじゃないw
あと今どきVPS知らない人とも話が通じないでしょ

296 名前:デフォルトの名無しさん mailto:sage [2015/04/13(月) 18:06:10.53 ID:zNUrQ3MR.net]
>>290
gitの最低限の操作なんて知ってりゃできるレベル。
しかし知るまでは、知ってりゃできるレベルか否かわからない。
それで自信の無い人は出来ないという。または使いたくないので、知ろうともしない。仕事は任せられない。
まっとうな技術者の知らないは、調べてやりますの意味。多少のサポートは必要かも知れないが、仕事を任せられる。

というか、コンピュータのオペレーションは全て知ってればできるレベル。

297 名前:デフォルトの名無しさん mailto:sage [2015/04/13(月) 18:44:49.69 ID:PFHUoot3.net]
コマンドなんて1回正しい手順覚えたらそれ繰り返すだけだしな

298 名前:デフォルトの名無しさん mailto:sage [2015/04/13(月) 22:01:32.53 ID:l/TWvXzv.net]
ピアノの演奏みたいなもんかね。

やってることは同じことの繰り返し。
技術力とはそれを間違いなく早く繰り返せる力のこと
知識に加え、長年の経験とセンスが必要とされる。

小学校でねこふんじゃったを引ける人がクラスに一人ぐらい
いたと思うけど、実はねこふんじゃったは難しい曲らしい。

だからといってその子は凄いわけじゃなく、
ねこふんじゃったしか弾けないという。

何がいいたいかというと、難しいものでも定型化してそれだけをやるなら比較的簡単にできる。
だけど、応用ができないんじゃ技術力があるとは言えないんじゃないかな。

コンピュータのオペレーションだって、今までに起きたことがない
問題が起きた時に対応できて初めて一人前だと思うよ。



299 名前:デフォルトの名無しさん [2015/04/13(月) 22:06:53.81 ID:U9cAqNzb.net]
3行にまとめろ

300 名前:デフォルトの名無しさん mailto:sage [2015/04/13(月) 22:10:28.26 ID:l/TWvXzv.net]
ピアノの演奏みたいなもんかね。やってることは同じことの繰り返し。技術力とはそれを間違いなく早く繰り返せる力のこと知識に加え、長年の経験とセンスが必要とされる。小学校でねこふんじゃったを引ける人が
クラスに一人ぐらいいたと思うけど、実はねこふんじゃったは難しい曲らしい。だからといってその子は凄いわけじゃなく、ねこふんじゃったしか弾けないという。何がいいたいかというと、難しいものでも定型化
してそれだけをやるなら比較的簡単にできる。だけど、応用ができないんじゃ技術力があるとは言えないんじゃないかな。コンピュータのオペレーションだって、今までに起きたことがない問題が起きた時に対応できて初めて一人前だと思うよ。

301 名前:デフォルトの名無しさん mailto:sage [2015/04/13(月) 22:35:09.37 ID:/JCb38ul.net]
趣旨は分かるけど、ねこふんじゃったは難しくないだろw
かなり単純で簡単な曲

302 名前:デフォルトの名無しさん mailto:sage [2015/04/14(火) 00:11:29.45 ID:Mnpx95ZS.net]
ねこふんじゃったは、楽譜にすると難しい曲。
単にピアノの鍵盤と五線譜の相性が悪いことの問題

303 名前:デフォルトの名無しさん mailto:sage [2015/04/14(火) 00:18:39.20 ID:6fsUN43G.net]
ルート通したあとのエラーは大して苦労しない
引き継いで全体像を知らなければ苦労しそうだがそれは能力とあまり関係ないこと

304 名前:デフォルトの名無しさん mailto:sage [2015/04/14(火) 01:35:10.67 ID:wfCHFEB4.net]
難しいのは、人が簡単に弾ける曲を作曲すること。
git自体の設計や、リポジトリ設計、オペレーションマニュアルを作ること。

305 名前:デフォルトの名無しさん mailto:sage [2015/04/14(火) 02:10:05.32 ID:UqXDsIMl.net]
>>300
楽譜にしてもスカスカだし難しくはないと思うが
♭6個が難しく見えるってこと?

つまりgitも慣れてない人には難しく見えるって話か

306 名前:デフォルトの名無しさん [2015/04/14(火) 07:30:46.14 ID:hU+kLzAL.net]
>>248
GitHub使ってるぽい企業みつけた

paiza.jp/job_offers/386

307 名前:デフォルトの名無しさん [2015/04/14(火) 07:41:08.44 ID:hU+kLzAL.net]
ここもGitHub使ってるぽい

paiza.jp/job_offers/554

308 名前:デフォルトの名無しさん mailto:sage [2015/04/14(火) 07:52:07.35 ID:ewVl24pp.net]
>>303
> ♭6個が難しく見えるってこと?
個人的には嬰ヘ長調(♯6個)の方が好き



309 名前:デフォルトの名無しさん mailto:sage [2015/04/14(火) 10:40:27.73 ID:CfmpsTw9.net]
バイオリンもフラットが増えると使う開放弦が無くなって難しくなるわ
初心者の意見だけど

310 名前:デフォルトの名無しさん mailto:sage [2015/04/14(火) 20:02:42.34 ID:oXtat876.net]
>>295
> コマンドなんて1回正しい手順覚えたらそれ繰り返すだけだしな

そういえば、教えられたコマンドを
メモ帳に書いて、それをひたすらコピペしている奴がいたな。

こういう時は、これ、
こういう時は、あれ、

その姿を見ていなければ、git使えているように見えるが、
何も理解していないという。

311 名前:デフォルトの名無しさん mailto:sage [2015/04/14(火) 20:43:04.53 ID:Q5r7cjjP.net]
全く高度なことではない作業に過ぎないのに、理解とは?w

312 名前:デフォルトの名無しさん mailto:sage [2015/04/14(火) 20:58:47.86 ID:ftm3iiW3.net]
subversionと比べたら何が便利?

313 名前:デフォルトの名無しさん mailto:sage [2015/04/14(火) 21:25:14.74 ID:Q5r7cjjP.net]
特に無し。マジで特に無し。
入門時の流行等で使うシステムが決まる。

314 名前:デフォルトの名無しさん mailto:sage [2015/04/14(火) 21:49:07.84 ID:oXtat876.net]
>>310
subversionよりも圧倒的に速い。

315 名前:デフォルトの名無しさん mailto:sage [2015/04/14(火) 21:54:22.43 ID:oXtat876.net]
>>309
ピアノと一緒って話だろ?
鍵盤を叩くのはだれでもできることだが、
それを使って素晴らしい音楽を演奏するのは難しい。

gitのコマンドを叩くのは簡単だが、
それを使ってソフトウェア開発を
効率よくするのは難しい。

だから効率上がらないよとか言ってる人がいるわけよ。

316 名前:デフォルトの名無しさん mailto:sage [2015/04/14(火) 23:34:02.72 ID:wnoVepzT.net]
>>311
こいつ最高にアホ

317 名前:デフォルトの名無しさん mailto:sage [2015/04/15(水) 20:27:20.03 ID:GB/eL5ft.net]
どうせcommitとpushくらいしか使ってないんだろう

318 名前:デフォルトの名無しさん mailto:sage [2015/04/15(水) 20:38:14.05 ID:6MF6OERw.net]
プッwくだらねーwオフィスソフトで文書作成できて上機嫌になる事務職と変わらんなw



319 名前:デフォルトの名無しさん mailto:sage [2015/04/15(水) 21:49:51.24 ID:1RecYAvv.net]
バージョン管理は何を使っても変わらない。
どうせやるのはpushするだけなんだから。
現在コンフリクトが起きないようにする運用方法を模索中。
他の人が触れないようにロックができればいいんだけどな。

320 名前:デフォルトの名無しさん mailto:sage [2015/04/15(水) 22:18:49.86 ID:V2WyrPfJ.net]
自分が作ったパッチでもコンフリクトするけどな。

321 名前:デフォルトの名無しさん mailto:sage [2015/04/16(木) 01:28:27.36 ID:Mp5pFy+1.net]
>>317
誰にも触れないようにネットワークから切り離せ

322 名前:デフォルトの名無しさん mailto:sage [2015/04/16(木) 02:09:02.52 ID:hUjU3Ohl.net]
ローカルではgitを使って、メインにはsvnを使うといい。

323 名前:デフォルトの名無しさん mailto:sage [2015/04/16(木) 09:11:33.22 ID:bLWn78BU.net]
>>320
メインっていうか中央やね。

基本的にコマンドをたくさん使うところがメインなので
ローカルがgitということはgitがメインとなる。

そして最後のmasterブランチの代わりにsvnを使う。
その場合svnは単なるストレージ的な扱いになる

324 名前:デフォルトの名無しさん mailto:sage [2015/04/20(月) 13:47:48.51 ID:RwDqOFG9.net]
開発ブランチが2つあって
masterで.gitignoreを変更したんですが
masterの変更を開発ブランチに取り入れる方法を教えてください
開発ブランチでgit merge masterってやってもこんなメッセージがでました
addしてコミットしないとだめなんですか?開発ブランチからmasterにmergeするときはこんなメッセージ出ません
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)

modified: .gitignore

no changes added to commit (use "git add" and/or "git commit -a")

325 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 11:04:43.23 ID:gKd17Ylm.net]
パーミッション変更しただけのも変更扱いなのかよ
面倒臭いなgit

326 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 11:12:45.44 ID:umXZ7BSe.net]
Unix系で使ってる分には気にならないんだけどねそのへんは
昨日、Cygwin新しくしてnoaclの設定忘れて作業始めちゃって酷い目にあった
git自体の設定でパーミッションの変更を無視するようにできるらしいけど、
その場合は新規ファイルのパーミッションはどうなるのかな

327 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 14:20:11.36 ID:Z/Go+19e.net]
Unixで気にならない?Windowsだろ

328 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 15:25:00.67 ID:umXZ7BSe.net]
Windowsはとんでもないパーミッションでレポジトリにファイル登録しちゃったりすることがあるのが心配なの
Unix系ならみた



329 名前:ワまのパーミッションで登録されるので安心 []
[ここ壊れてます]

330 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 16:21:04.26 ID:5PzRDxP4.net]
>>323
記録されるのは実行権限だけだよ。

実行権限をリポジトリに入れないと
困るのは言うまでもない。

331 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 16:21:44.23 ID:5PzRDxP4.net]
>>326
> Windowsはとんでもないパーミッションでレポジトリにファイル登録しちゃったりすることがあるのが心配なの
登録されるのは実行権限だけだよ。

> Unix系ならみたままのパーミッションで登録されるので安心
登録されるのは実行権限だけだよ。

332 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 16:28:14.13 ID:umXZ7BSe.net]
ソースファイルが実行権限つきで登録されたらダメだろ?
755とか644とかこれ実際には実行権限だけしか登録されないってこと?

333 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 16:46:16.84 ID:5PzRDxP4.net]
> ソースファイルが実行権限つきで登録されたらダメだろ?

は? スクリプトファイルは
実行現原付きのソースコードだが?

334 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 16:48:49.11 ID:Ys0gBcPs.net]
スクリプトファイルに「常に」実行権限を付けてるの?(´・ω・`)
((((((;゚Д゚))))))ガクガクブルブル

335 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 16:50:25.56 ID:5PzRDxP4.net]
どこに常にって書いてあるんだ?
つけたりつけなかったりする必要があるから
実行権限をリポジトリに入れる必要があるんだろ。

336 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 16:53:11.58 ID:Ys0gBcPs.net]
どう考えても開発中のスクリプトファイルに実行権限がどうしても必要な
理由が理解できないよ?(´・ω・`)

337 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 16:54:39.89 ID:5PzRDxP4.net]
チェックアウトしてからいちいち実行権限付けてから実行するのか?

CGIアップロードしてから、全部のファイルのパーミッションを
設定してから使うウェブアプリかよw

338 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 16:55:32.36 ID:umXZ7BSe.net]
>>330
なるほどソースファイルは644で、スクリプトファイルは755で登録されればいいわけだな
Unix系の場合にはファイルのパーミッションの値に準じて登録されてると思うんだけど、
Windowsの場合にはどういう仕組みになってるんだ?

昨日Cygwinでソースファイルが755で登録されちゃってとても困ったんだが



339 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 16:58:21.33 ID:5PzRDxP4.net]
pro gitでもよめ。
なんでもきくな

340 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 17:01:42.91 ID:umXZ7BSe.net]
なんかあらためてぐぐったらちょっと特殊な事情があることがわかった
fourxz.hatenablog.com/entry/2013/12/13/003317

IntelliJ + cygwin の特殊な例だったんだな
おれの場合にはIntelliJの設定じゃなくてCygwin側のfatabでACLを無効にして対処した

こんなのpro git読んでもわかんねえよ

341 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 17:03:55.25 ID:umXZ7BSe.net]
Windowsはめんどくせな

342 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 17:05:33.91 ID:Ys0gBcPs.net]
>>334
いってることが前時代的なんで理解し難いけど?(´・ω・`)
アップロードもインストールの一部だと考えれば、インストールスクリプトで
パーミッションを弄るよ?おいらならね?(´・ω・`)

343 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 18:03:03.48 ID:5PzRDxP4.net]
>>339
理解能力がないやつだなw

コンパイルしなくてすぐに実行できるのが
スクリプト言語のいいところなのに、
なんでそんな準備をしないといけないんだって話だよ。

cloneしてローカルで動かすとか思いつかないのか?

344 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 18:04:31.50 ID:5PzRDxP4.net]
>>339
どうせサーバーにアップロードも
今どきFTPでアップロードして
パーミション設定とかしか思いつかないんだろうけど、

git使っていれば、git cloneしてハイおしまい。
なんだよ。

345 名前:デフォルトの名無しさん mailto:sage [2015/04/21(火) 23:04:14.84 ID:nTfDDlXC.net]
typescriptとかsassで吐き出される*.jsや*.cssもgitで管理したほうがいいですか?

346 名前:デフォルトの名無しさん mailto:sage [2015/04/22(水) 08:24:45.00 ID:dTAen5CN.net]
>>339
そのインストールスクリプトは…

347 名前:デフォルトの名無しさん mailto:sage [2015/04/22(水) 09:46:39.29 ID:ZhuC/XHh.net]
もちろん、そのインストールスクリプトの
パーミッションを変えるスクリプトをつけるに決まってるだろ

348 名前:デフォルトの名無しさん mailto:sage [2015/04/22(水) 09:50:29.82 ID:iit3/b2j.net]
もしかすると、そのインストールスクリプトのパーミッションを変えるスクリプトのパーミッションを変えるスクリプトが必要なんじゃね?!



349 名前:デフォルトの名無しさん mailto:sage [2015/04/22(水) 10:07:21.92 ID:gnynNjp+.net]
多分、普通にそのスクリプトのインタプリタを起動してコマンドラインに
スクリプトファイルを入れておくと思うよ?(´・ω・`)

350 名前:デフォルトの名無しさん mailto:sage [2015/04/22(水) 11:07:07.29 ID:ZhuC/XHh.net]
その普通に起動するスクリプトのファイル名とインタプリタ名はどうやって知るのかな。
自分一人で作業することしか考えてないだろ。

って言われたらその場でまた言い逃れを考えて書き込むだけだから書くだけ無駄かw

351 名前:デフォルトの名無しさん mailto:sage [2015/04/22(水) 11:40:56.36 ID:sdnJBf1e.net]
実行権限を付けたいファイルは実行権限をつけている。
その実行権限をそのままリポジトリに入れられないとなると、
ファイルに実行権限ついているというのに
それと同じ情報を別ファイルにまとめないといけない。
つまり情報が二重になってしまっている。

ローカルでテストコードを実行した時
(実行権限が付いているから)テストが成功するのに、
他のマシンでcloneしたらテストコードが失敗する。
実行権限情報が間違っていたからだ。
つまりアプリの信頼性にも関わってくる。

352 名前:デフォルトの名無しさん mailto:sage [2015/04/22(水) 11:41:34.93 ID:gnynNjp+.net]
多分、readmeを読める言語能力がある人には特に難しい事ではないと思うよ?(´・ω・`)

353 名前:デフォルトの名無しさん mailto:sage [2015/04/22(水) 11:43:31.12 ID:gnynNjp+.net]
実行権限の有無で失敗するテストコード?とんちなの?馬鹿なの?(´・ω・`)

354 名前:デフォルトの名無しさん mailto:sage [2015/04/22(水) 11:46:20.25 ID:sdnJBf1e.net]
>>350
そりゃ、テストコードでスクリプトを実行している
コードに決まってるじゃんw

っていうかビルド自体が失敗するし

git のリポジトリ見てみな。
実行権限ついてるだろ?
それ全部外してmakeしてみな。

355 名前:デフォルトの名無しさん mailto:sage [2015/04/22(水) 11:52:36.40 ID:sdnJBf1e.net]
>>349
readme関係ないからな。

実行権限という情報を二重に持つことがだめだって話。

ファイルについてる情報を
わざわざreadmeにコピペするんなよ。
素人かよw

356 名前:デフォルトの名無しさん mailto:sage [2015/04/22(水) 13:38:15.27 ID:xj2mf7xJ.net]
チェックアウト時のパーミッションなぞumaskで変わるんだから
install -m で指定するのが当たり前
つまらん揚げ足取りでスレ汚すなよ

357 名前:デフォルトの名無しさん mailto:sage [2015/04/22(水) 18:07:06.97 ID:sdnJBf1e.net]
>>353
今は実行権限の話。
umaskはファイル新規作成の時の話。
当たり前だが、cloneしたときの実行権限には関係ない話。

ちょっと無理やりすぎな屁理屈だったかなw

358 名前:デフォルトの名無しさん [2015/04/22(水) 21:08:01.41 ID:3b9p/BsF.net]
SourceTreeで 変更されたファイルを表示しようとすると
コミット対象が選択されていません とか出るんだけど
コミット対象ってなんのことですか?



359 名前:デフォルトの名無しさん mailto:sage [2015/04/23(木) 10:35:30.48 ID:DTt/WaGx.net]
絞り込んだ対象にファイルがないんだろう
絞りこみ対象を変えるかブランチ選ぶかしてみては

360 名前:デフォルトの名無しさん mailto:sage [2015/04/23(木) 11:47:46.40 ID:RLLS8SFj.net]
>>355
> コミット対象ってなんのことですか?
こうなるから、GUIを先に使うのはだめだと思うわ。

GUIはわかりやすいんだよ。わかりやすいから逆に
見て直感的にわかるようなこと"以外"の
知識を知らないまま使えてしまう。

デザイナとかも使ってもらうために、GUIはあっていいと思うが
ゲームみたいにチュートリアルをこなさないと
すすめないようにするべきなんだろうな。

361 名前:デフォルトの名無しさん mailto:sage [2015/04/23(木) 12:40:46.69 ID:0IqaduwO.net]
>>357
攻略しなきゃならんようなもんだと最初から使われないよ

362 名前:デフォルトの名無しさん mailto:sage [2015/04/23(木) 12:52:17.15 ID:zERGLrhN.net]
ワードエクセル使う脳みそがあれば使えるはず

363 名前:デフォルトの名無しさん mailto:sage [2015/04/23(木) 18:18:36.41 ID:RLLS8SFj.net]
>>358
ゲームは攻略するものだが
使われてるぞ?

364 名前:デフォルトの名無しさん mailto:sage [2015/04/23(木) 21:28:23.11 ID:xe4GpqoA.net]
>>357
けっきょくコミット対象とはなんでしょうか
今使ってるmasterブランチのことでしょうか

365 名前:デフォルトの名無しさん mailto:sage [2015/04/23(木) 21:33:48.98 ID:xe4GpqoA.net]
>>356
ありがとうございます。すみません見落としていました。

絞り込んだ結果、ファイルが選択されていない状態のことでした。
なぜコミット対象が選択されていないというメッセージなのかは
不明ですが、GUIのメッセージが不適切なだけかもしれぬ。

366 名前:デフォルトの名無しさん mailto:sage [2015/04/24(金) 07:42:40.59 ID:7qXJwKGv.net]
>>358
いやいや、マリオの最初見てみ
よわっちいくりぼーでジャンプを覚える
その先でまたくりぼー出てきて思わずジャンプしたら上のブロックから隠しスターが出てくるとか
むちゃくちゃ良くできてるチュートリアルだから

367 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 10:14:34.47 ID:gbrpzY ]
[ここ壊れてます]

368 名前:AV.net mailto: cvsからgitに移行したい。
cvs2gitを使ってみたが、$Id$ $Revision$ $Date$などCVS keywordがうまく変換されない。
gitで新たに管理するソースは、gitでは非推奨のkeywordを使わないルールにするつもり。
しかし過去にcvsでコミットしたソースは、diffで差分が出ないように、そのリビジョンにおけるCVSキーワード展開した形で見せたい。無理だろうか?
[]
[ここ壊れてます]



369 名前:361 mailto:sage [2015/04/27(月) 12:36:48.36 ID:gbrpzYAV.net]
>>364
解決した。
--use-cvs を使った上で、--auto-propsで_keyword_handling=expandedを指定するのが正規の手順らしいが、うまくいかない。
cvs2svn-trunkのソースdvcs_common.pyの108行目をexpandedに書き換えたらうまく行った。
ツール開発者の意図した方法でないが、うまくいったからこれで良いや。

370 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 20:45:56.16 ID:vTVPlfs5.net]
>>363
じゃーそのチュートリアルを作って見せてくれや

371 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:14:43.51 ID:tqDCJ6PW.net]
なにが「じゃー」なのか理解できない

372 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:34:24.12 ID:3pJIw6k3.net]
>>366
金出せよ、まさかただとか言わないよな

>>367
論点ずらしのつもりだろ
低能がよくやる

373 名前:デフォルトの名無しさん mailto:sage [2015/04/29(水) 07:34:19.84 ID:rLCyhFbm.net]
口だけ達者でなにもできない無能ですって自己紹介は要りませんよ

374 名前:デフォルトの名無しさん mailto:sage [2015/04/29(水) 09:15:46.10 ID:g6CBhBxf.net]
gitにもゲームによくあるチュートリアルみたいなのあったほうがいいよね
(もしチュートリアルがあってもそんな)攻略が必要もの(git)は使われない
いやマリオの最初はチュートリアルになっている(が皆が使って遊んでいる)
じゃあチュートリアル作って
金出せばやるよ


前半すでに会話が成り立っていない

375 名前:デフォルトの名無しさん mailto:sage [2015/04/29(水) 09:17:15.92 ID:MPDoLmFP.net]
>>369
自己紹介は要りませんよ

376 名前:デフォルトの名無しさん mailto:sage [2015/04/29(水) 09:59:33.54 ID:MxyhIMrU.net]
CLIチュートリアルはウェブアプリとしていくつかあるね
コミットグラフ表示しながら課題解いていったり出来てよく出来てる

377 名前:デフォルトの名無しさん [2015/05/02(土) 18:02:57.19 ID:86QaeJl2.net]
SourceTree を使ってるんですが、UIがいまいちなので
乗り換えようと思っています。
なにか良いGUIツールありますか?

378 名前:デフォルトの名無しさん mailto:sage [2015/05/02(土) 18:42:46.54 ID:bdhWq9VE.net]
ありません



379 名前:デフォルトの名無しさん mailto:sage [2015/05/03(日) 13:49:31.79 ID:du+Vke+v.net]
>>372
learnGitBranchingってやつかな?
あれは良かった
ヤリたい事や結果をイメージできるようになった

380 名前:デフォルトの名無しさん mailto:sage [2015/05/04(月) 23:58:46.35 ID:Oo1Eb5uX.net]
「gitすら使えないやつはバカ」って人がいるせいで、どうしても話がこじれる
なんで「gitは使うのが簡単、使えないやつはバカ」って思っちゃうんだろうな
まあ自分が使えるからだろうが

381 名前:デフォルトの名無しさん mailto:sage [2015/05/05(火) 00:25:20.05 ID:8OQq3apA.net]
>>376
難しいんじゃなくて慣れだからだよ。
自転車と一緒。

382 名前:デフォルトの名無しさん mailto:sage [2015/05/05(火) 02:15:41.04 ID:JZAyWxcq.net]
gitに慣れてるってだけで、「git使えないやつはバカ」ってなってしまうってことか?
だとしたら、勘違いって怖いな

383 名前:デフォルトの名無しさん mailto:sage [2015/05/05(火) 02:57:58.30 ID:8OQq3apA.net]
慣れるだけでいいのに、それをやらないから
馬鹿なんだよ。

384 名前:デフォルトの名無しさん mailto:sage [2015/05/05(火) 09:59:06.82 ID:O/Hk2+s1.net]
無理になれる必要なし

385 名前:デフォルトの名無しさん mailto:sage [2015/05/05(火) 10:30:34.62 ID:aqs5IwHg.net]
こうしたらこうなる、〜したいときはこうする、ってのをイメージしやすくするってのが無いと
なかなか理解に至らないね

386 名前:デフォルトの名無しさん mailto:sage [2015/05/05(火) 21:56:29.24 ID:49b6mSTt.net]
Gitの前はSVNを使っていたし
どっちもGUIから操作していたからか理解は早かった

387 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 02:36:46.48 ID:jAvlL/Ie.net]
理解してると思ったのは早かった
の間違えかな。

388 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 02:47:12.60 ID:M8LrA/ZF.net]
どこまで理解しているかが問題なんだけどね。

gitを理解するっていうことは、
コミットログを思うとおりに修正できるということ。



389 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 10:58:49.04 ID:II8rx/Qj.net]
>>384
そんなオレオレ定義書かれてもなぁ

390 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 11:08:24.15 ID:ctlCJDEk.net]
でも間違ってないよ

391 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 11:49:51.00 ID:II8rx/Qj.net]
間違ってるとは書いてないが?
通りすがりの女の子見て、かわいいって言ってるのと同レベル
他の人にはあまり役に立たない情報

392 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 11:52:04.16 ID:ctlCJDEk.net]
で、そのレスはなにかの役に立つの?

393 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 12:24:19.92 ID:II8rx/Qj.net]
君が少し抜けてることを示すことが示せただろ w
それを役立たせられるかどうかは君次第

394 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 13:50:54.04 ID:qde5blL8.net]
gitを理解すると、>>383とか>>384みたいになってしまうのだろうか・・・

395 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 16:05:05.62 ID:ctlCJDEk.net]
他人に文句ばかり言ってないで、自分の意見を言えよ。

396 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 16:46:24.47 ID:i5GOg3P9.net]
ID:ctlCJDEk の意見 ⇒ でも間違ってないよ

頓珍漢すぎだろ w

397 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 17:06:15.08 ID:LywkhDvi.net]
cvsとの対応表を作ってそれを壁に貼ってる。
gitは簡単に使うには機能が分割され過ぎてる。

398 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 17:17:46.21 ID:Iqww/TfG.net]
コミットとプッシュが分かれてることを言ってるのなら
それが必要ないならCVSのままでいいってこと
無理してgitに移ることはない



399 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 17:28:27.94 ID:ctlCJDEk.net]
なぜgitが生まれたのか?
それは以前のものに何かが足りなくて
その足りないものが必要だったから。

つまりgitにしかないものを使いこなすことが
gitを使いこなすことであり、
対応表で対応付けられないものこそ
gitを使いこなしているといえる機能なんだよ

400 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 17:43:32.97 ID:c5uD7uUc.net]
なぜgitが生まれたのか?
BitKeeperがライセンス絡みでLinuxの開発に使えなくなったので
代わりになるものを仕方なく開発したのです

401 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 18:01:40.24 ID:ctlCJDEk.net]
そして、BitKeeperの代わりに既存のものを使わなかったのは、
既存のものに足りない機能があったから。

だから新しく開発し、足りない機能を搭載した。

つまりgitにしかないものを使いこなすことが
gitを使いこなすことであり、
対応表で対応付けられないものこそ
gitを使いこなしているといえる機能なんだよ

402 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 18:27:49.31 ID:2otn6PY7.net]
脳内設定はチラシの裏に書けってママにおそわらなかったんでちゅか?

403 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 18:31:53.76 ID:ctlCJDEk.net]
期待したけど反論じゃなかった。つまらん。

404 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 18:50:33.64 ID:2otn6PY7.net]
はいこのバカ議論厨と自白しました
終了

405 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 19:03:55.00 ID:ctlCJDEk.net]
> バカ議論厨と自白

論理的に考えるとそうなるの?
負け犬の遠吠えに見える。

406 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 19:06:14.56 ID:ctlCJDEk.net]
あ、わかった。
これほっといてあげたほうが良い事例だ。
荒らしにレスするのも荒らしらしいね。

407 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 20:05:39.36 ID:qde5blL8.net]
git使いがgitになる良い事例だな・・・
ttps://kotobank.jp/ejword/git

408 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 20:28:47.97 ID:vpS3Kk/9.net]
github落ちた?



409 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 20:38:29.67 ID:ctlCJDEk.net]
>>403
こっちのほうがわかりやすい

ja.wikipedia.org/wiki/Git#.E5.90.8D.E5.89.8D.E3.81.AE.E7.94.B1.E6.9D.A5

名前の由来[編集]
リーナス・トーバルズによれば[26]、
“ 僕は自己中心的な奴だから、自分のプロジェクトには自分にちなんだ名前を付けるようにしているんだ。最初はLinuxで、今度はgitだ。 ”
英語のスラングとして、gitには「バカ」「間抜け」といった類の意味がある。この自虐ネタはもちろん皮肉で、
これはリーナスがLinuxの名前を決める際に自身の名前にちなんだ名前を付けるよう強要されたことから来ている。(Linux#名前の由来を参照)

410 名前:デフォルトの名無しさん mailto:sage [2015/05/06(水) 21:17:00.33 ID:qde5blL8.net]
>>405
わざわざ自己紹介しなくても・・・w

411 名前:デフォルトの名無しさん mailto:sage [2015/05/07(木) 00:34:12.47 ID:bUwhy5PJ.net]
>>405は、自分が間抜けだって思われてることに気が付いてない正真正銘の間抜けらしいな
>>389の洞察力はかなりのもんだ

412 名前:デフォルトの名無しさん mailto:sage [2015/05/07(木) 00:47:11.22 ID:Z2wm6bTM.net]
gitなんてもはや使って当たり前のツール
熱く語るようなものじゃない
いまどきgit使わないのは「メモ帳でもプログラム書けますよ」と同じようなレベル

413 名前:デフォルトの名無しさん mailto:sage [2015/05/07(木) 03:51:35.72 ID:NXZBxN2S.net]
>>405-406
それで自分の意見は?
他人にあーだこーだいってるんだから
俺ならこうだっていう意見ぐらいあるよな?

414 名前:デフォルトの名無しさん mailto:sage [2015/05/07(木) 03:52:09.72 ID:NXZBxN2S.net]
>>405-406じゃなくて
>>406-407

415 名前:デフォルトの名無しさん mailto:sage [2015/05/07(木) 07:44:40.13 ID:boZKLFPs.net]
>>409-410
>>392
もう少しまともな意見が言えるようになったらまたおいで

416 名前:デフォルトの名無しさん mailto:sage [2015/05/07(木) 08:48:51.64 ID:NXZBxN2S.net]
あー、反論できないからってw
図星なんだな

417 名前:デフォルトの名無しさん mailto:sage [2015/05/07(木) 09:28:18.61 ID:SJ9cQ9MA.net]
中学校までしか見ないセリフで笑い取りに来るのやめろ
変なダメージ入るわ

418 名前:デフォルトの名無しさん mailto:sage [2015/05/07(木) 10:32:48.57 ID:3s/cPLTB.net]
会社で使う分にはcvsで十分なんだよな
個人同士で開発するときにはgit超便利だけど



419 名前:デフォルトの名無しさん mailto:sage [2015/05/07(木) 18:23:51.20 ID:/fyjA82q.net]
事務や立法には今ならgitが必須であるはずだが現実には全く使われないな。
俺は、総務にバージョン管理を、役員にMSプロジェクトを、それなりに真剣に薦めた事があったが、何も実行されなかった。

420 名前:デフォルトの名無しさん mailto:sage [2015/05/07(木) 21:06:06.49 ID:K4zbhPtL.net]
>>412
どのレスに反論しろって言ってるんだ?

421 名前:デフォルトの名無しさん mailto:sage [2015/05/07(木) 23:49:15.84 ID:NXZBxN2S.net]
>>416
レスするなら反論しろってこと

>>406>>407>>411、あたりだね。
レスしてるってことは、何か言いたいことがあるってこと。
でも、その言いたいことが何も書いてない。

「どのレスに対する反論しろ」っていう話じゃなくて
レスするなら、自分の意見を書きなさいってこと。

422 名前:デフォルトの名無しさん mailto:sage [2015/05/07(木) 23:50:08.72 ID:NXZBxN2S.net]
もちろん反論じゃなくて
賛成でもいいよ。

どちらにしろ、自分の意見が書いていないレスは
ゴミ同然だろう?

423 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 00:00:17.12 ID:ZHeXF73S.net]
戦犯>>416

424 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 00:05:38.96 ID:SsabnSp5.net]
>>417
言いたいことは、「お前はマヌケだな」ってことじゃないのか?w

425 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 00:24:24.90 ID:k44MRK8x.net]
その理由が書いてないから、説得力ないですよね?
そういう話をしているの。

426 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 00:36:25.10 ID:SsabnSp5.net]
>>407に書いてあるように見えるがw

427 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 00:54:02.88 ID:k44MRK8x.net]
>>407のどこに書いてあるか、その文章を
カッコつきで引用してみて。

428 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 00:56:53.00 ID:P0RHYnr3.net]
で、このガキのケンカをいつまで見せられるの?



429 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 01:02:15.84 ID:SsabnSp5.net]
ID:k44MRK8xがgitを使うのをやめるまで

430 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 01:04:13.32 ID:k44MRK8x.net]
はぁw やっぱりいちゃもんだけつけて
何も言い返してこないのね。
最近こんな奴が多いね。

ま、言い返してこないなら、
願ったり叶ったりだけど。

じゃ、次。

431 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 01:04:34.82 ID:ZHeXF73S.net]
ここは荒れるたびに荒れ方が幼稚になっていくなあ

432 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 01:10:04.42 ID:k44MRK8x.net]
幼稚な奴がいるんでしょ?
幼稚じゃなければちゃんと会話のキャッチボールができるはず。

433 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 01:11:40.05 ID:dtfwKzs4.net]
すんません、思いっきり初歩的な質問です。これってソースコード管理となってるけど、例えば
excelのブックやあるいはVBなどのプロジェクトをフォルダ単位で…とかって出来るんですか?

ソースコード管理というとなんかテキストで保存みたいに聞えるんですが

バージョン管理触ったことがないんで、ちょっとお聞きしたいです

434 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 01:24:17.86 ID:k44MRK8x.net]
gitで管理するには、バージョンとバージョンの差を
取り出す方法(つまりdiff)ができないとだめ。
excelはそれが出来ないので無理。(正確に言うと意味が無い)

VBは一部にバイナリデータがあったと思うが、大部分はテキストなので可能。
(バイナリデータは保存することしかできないが)

勘違いしてはいけないのは、バージョン管理ツールは
バージョンを管理するものであって、
バックアップをするためのものじゃないってこと。

バージョンを管理するというのは、バージョンとバージョンの機能の差を抜き出したり、
その抜き出したものを開発中の別のバージョンに適用したりそういったことをする。

特殊な形式のバイナリが標準化されれば、バージョン管理できるかもしれないが
現時点ではテキストファイルしかバージョン管理できない。

excelなんかはバージョン管理(差分を抜き出すなど)する意味が無いので
別のバックアップツールを使った方がいい。

435 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 01:27:36.31 ID:dtfwKzs4.net]
了解です。深夜にありがとうございますです

436 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 02:06:08.07 ID:ZHeXF73S.net]
フォルダごとできるけど差分で管理されないので1MBのファイルを100回コミットしたら100MB消費みたいになる
それでも使うのは構成管理用か管理上ソースと不可分であるときくらい
事務用でも月次年次確定データや契約書決裁書等重要書類が紛失変更されないようロックするには都合がいい
バックアップファイルの管理とバックアップツールの保守が不要になる
タイムマシンしたいなら無駄無駄無駄普通にバックアップソフト使え

437 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 07:14:07.27 ID:IAWQ0LFr.net]
>>430
> バージョンを管理するというのは、バージョンとバージョンの機能の差を抜き出したり、
> その抜き出したものを開発中の別のバージョンに適用したりそういったことをする。
幼稚なオレオレ定義乙

>>429
単純に最新版管理したいとか、たまに過去バージョンを取り出したりしたいだけなら Subversion の方がいい
Excel ってことはたぶん Windows だろうから TortoiseSVN インストールすればほぼ GUI で使えるし
詳しく知りたいなら続きはこちらで
Subversion r15
peace.2ch.net/test/read.cgi/tech/1406967657/

438 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 09:22:21.26 ID:samEA3DJ.net]
そういう用途ならTIME MACHINEとかWindowsバックアップでいいべ



439 名前:デフォルトの名無しさん [2015/05/08(金) 09:51:36.80 ID:5NA7Syvjy]
>>431
> excelなんかはバージョン管理(差分を抜き出すなど)する意味が無いので
セル書換えとかカラム追加とか差分を抜き出したいことは普通にあると思うが。

440 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 09:44:23.49 ID:SsabnSp5.net]
>>428
>幼稚な奴がいるんでしょ?
それがお前だな

441 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 11:34:00.00 ID:Yhmm5THU.net]
>>434
TIME MACHINE はよく知らんからわからんけど Windows バックアップとかとは別物
一時間の間に 10回変更したら 10回バックアップとる訳じゃないでしょ

442 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 11:41:31.10 ID:samEA3DJ.net]
svnだって自分でコミットしなけりゃ取れないじゃんか
バックアップだって自分でトリガひける

443 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 12:19:48.40 ID:Yhmm5THU.net]
そうだね、頑張ればなんでもできるよ w

444 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 12:55:19.05 ID:SsabnSp5.net]
どっちもどっちという結論

445 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 19:41:28.50 ID:dtfwKzs4.net]
>>433
426です。Subversionってのを調べてみます。情報多謝m(_ _)m

446 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 20:05:19.99 ID:9kJl+Khz.net]
バグを埋め込んでしまった場合、コミットをまとめるとリーディング量が増えるからまとめないほうがよいという結論に達した
こまかくpushするほうがよい
たとえば足し算の結果を表す機能と引き算の結果を表す機能を作るとしたら2つのコミットを作れば良い
この2つを1つのログにまとめるべきではないのだ
何でもかんでも1つにまとめるのがかっこいいという間違った思想を持った人間がいるので困った。

447 名前:デフォルトの名無しさん mailto:sage [2015/05/08(金) 20:18:03.21 ID:ZHeXF73S.net]
当たり前すぎる
よくそれでコード書いてるな
目的ごとにブランチ切ってコミットあたり1ハンクだけで済むようにするのがベストプラクティスだ

448 名前:デフォルトの名無しさん mailto:sage [2015/05/09(土) 00:45:24.25 ID:oI9IuS7a.net]
>.438
> バグを埋め込んでしまった場合、コミットをまとめるとリーディング量が増えるからまとめないほうがよいという結論に達した

具体例かける?
書けるはずだよね。書いて。



449 名前:デフォルトの名無しさん mailto:sage [2015/05/09(土) 00:56:47.31 ID:bOQm//LK.net]
ここの幼稚な人は、ど〜してもケンカがしたくてたまらない

450 名前:デフォルトの名無しさん mailto:sage [2015/05/09(土) 00:58:05.96 ID:oI9IuS7a.net]
なんだ。またいつものアイツかw

451 名前:デフォルトの名無しさん mailto:sage [2015/05/09(土) 13:31:25.76 ID:MqwqSntJ.net]
git で3件昔の履歴の内容を確認したいのでgit reset HEAD^^^しました
戻る時ってgit reflogで最新の履歴を確認してgit reset HEAD@{n}しました
こういうやり方であってますか?

452 名前:デフォルトの名無しさん mailto:sage [2015/05/09(土) 13:38:29.58 ID:P/ABm+5N.net]
まちがってます

453 名前:デフォルトの名無しさん mailto:sage [2015/05/09(土) 13:38:44.30 ID:8PoBBRDQ.net]
checkoutでおk

454 名前:デフォルトの名無しさん mailto:sage [2015/05/09(土) 13:41:01.09 ID:oI9IuS7a.net]
>>447
tigコマンドを使う。

455 名前:443 mailto:sage [2015/05/09(土) 19:11:08.54 ID:hILIDw1n.net]
checkout使うことにします
tigも調べてみます

456 名前:デフォルトの名無しさん mailto:sage [2015/05/12(火) 16:17:37.50 ID:pNASC22d.net]
すいませんgit checkout HEAD^^で過去に戻ってファイルを作成したり編集したんですが
元のブランチに戻りたいのですがこのままだとできません
git reset --hard HEADとかgit checkout .とかして更新をなかったことにできません。
元のブランチに戻るためには更新されてない状態に戻す必要があると思うんですがどうやるのですか?

457 名前:デフォルトの名無しさん mailto:sage [2015/05/12(火) 16:23:44.14 ID:KgdwQEvt.net]
本当に修正をなくして良いなら、git reset --hard 元のブランチ名
今度からは、修正したいときは新しくブランチを作ってからやるんだよ
git checkout -b edit_branch head^^
で、修正するも捨てるも良し

458 名前:デフォルトの名無しさん mailto:sage [2015/05/14(木) 08:09:17.45 ID:aOO0/Ibj.net]
今度からって今からでもできるし。



459 名前:デフォルトの名無しさん mailto:sage [2015/05/14(木) 08:11:21.04 ID:aOO0/Ibj.net]
got checkout ブランチ名 で普通に行けるべ。

460 名前:デフォルトの名無しさん mailto:sage [2015/05/14(木) 08:43:10.59 ID:U5lm4ek9.net]
行けるかどうかは修正内容によらないか?

461 名前:デフォルトの名無しさん mailto:sage [2015/05/14(木) 12:28:03.63 ID:dw1HaLxu.net]
.gitignoreの内容
*
!*.txt
!data/
data/.*
!data/*.txt

mkdir data
touch data/a.txt
touch data/.b.txt
git init
git add .

これでdata/.b.txtもインデックスに追加されてしまいます
.gitignoreでどういうふうに指定したら.から始まるファイルを除外できますか?

462 名前:デフォルトの名無しさん mailto:sage [2015/05/14(木) 12:59:28.26 ID:7ksZOIpV.net]
data/.b.txtが除外されないのは最後の!data/*.txtで解除されてるせいじゃね?
data/*.txtにdata/.b.txtがマッチするのはちょっと妙に感じるかもしれないけど

data下の.ではじまるファイルを全部除外したいなら、
ルールの!data/*.txtとdata/.*の順番を入れ替えればいいのかな

463 名前:デフォルトの名無しさん mailto:sage [2015/05/15(金) 11:59:16.15 ID:XocOnm+L.net]
リクエストがマージされたら即ブランチを削除していたのですが、それでは、リクエストに対してされたコメントやレビューが見れなくなってしまいます。
ブランチを削除してもレビューやコメントを残す方法は何かないでしょうか?

464 名前:デフォルトの名無しさん mailto:sage [2015/05/15(金) 20:00:20.09 ID:p2cJvo/x.net]
それGitの話なのか?

465 名前:デフォルトの名無しさん mailto:sage [2015/05/16(土) 01:25:17.31 ID:+UC07Y5W.net]
>>459
githubは知らないけど、gitlab(最新版)なら
ちゃんと残る。

正確にはコメントやレビューはマージリクエスト(githubのプルリク相当)に書かないとダメ。
ブランチ(コミット)に対してのコメントであれば見れなくなる。(今は残ってる気もするけど)

466 名前:デフォルトの名無しさん mailto:sage [2015/05/16(土) 17:17:39.54 ID:AD3UxZEY.net]
>>461
ありがとうございます。Gitlabを使ってるのでバージョン上げてみます。オフィシャルブログの更新内容をみてもそれらしき更新がなくダメだと思ってました。

467 名前:デフォルトの名無しさん mailto:sage [2015/05/16(土) 23:14:20.75 ID:waTp+O7j.net]
>>462
gitlabの話でよかったんだなw

自分もコメント消えるのが問題だったが、最近消えなくなったなーって
思うだけでどうなっているのかよくわからないから、ついでに動作を少し検証してみた。

* マージリクエスト(以降MRと書く)にコメント(1)を付ける。
* MRのDiscussionにコメント(1)が表示される。

* MRのChangesからコメント(2)を付ける
* MRのDiscussionにコメント(2)が表示される。

* MRのCommitsからたどったコミット番号(A)のソースコードにコメント(3)をする
* 同コミットの下からコメント(4)をする。
* MRのDiscussionにコメント(3)(4)が表示される。

* Discussionから(2)(3)(4)にReplyする。
* Discussion と共に、コメントを書いた元の場所にもReplyが表示されている。

ここまでは消したりしてないので、ごく普通にコメントが表示されている。
当たり前ではあるんだけど変更した行以外にはコメントつけられないな。
たまに周りにも修正すべき所があってコメントしたくなるんだけど。

468 名前:デフォルトの名無しさん mailto:sage [2015/05/16(土) 23:15:03.07 ID:waTp+O7j.net]
でこのマージリクエストをrebaseしてgit push --forceしてみた。
つまり、コミット番号(A)がMRから消えてなくなる。

* MRに書いたコメント(1)は当然残っている。

* Changesに書いたコメント(2)はMRに残っているが、outdated diffということで
 折りたたまれているので注意。Showをクリックすれば見れる。

* 消えたコミット番号(A)に書いたコメント(3)(4)は、MRからは消えている。
 ただしコミットを表示すれば見ることはできる。
 MR作成後にpushしたコミットなら自動的に、MRに記録されるようになっているが
 最初にpushしたコミットは残らない。(Dashboardあたりで確認可能)

ではAccept Merge Requestしてブランチ削除してみる。
(当たり前だがマージしたMRを見ることは可能)

この状態はgit push --forceしたのと同じ状態。
特にコメントすることもないかな。


結論としてはMRにコメントを残したいならば、
MRかもしくはそのChangesに書く。(たぶん昔からこの挙動)

MRに含まれるコミットにコメントした場合、
そのコミットが消えると行方不明になることがある。
行方不明になるだけで残ってはいるので、コミットに
辿り着くことができれば見ることは可能。

なので、コミットにコメントしてしまった時は
MRからたどり着けるようにリンクを張っておけば良い。



469 名前:デフォルトの名無しさん mailto:sage [2015/05/16(土) 23:20:45.79 ID:waTp+O7j.net]
結局のところコメントが残るかどうかの挙動自体は、
昔から変わってないと思うんだけど、それはそれとして
MR自体が見やすくなっているので、バージョンをあげるのはありだと思う。

例えばgit push --forceした時とかにpushしたコミット番号が
MRに記録されるようになったのは最近の機能。
できれば最初のコミット番号もMRに記録されて欲しいんだが。
Dashboardとかから調べられるけどさ。

gitlabは昔(と言っても一年前程度)はいかにもgithubの
クローンってUIだったけど、UIが変わってgithubとは別の
同種のソフトって感じで良くなったと思うよ。
機能的にもgithubに全然劣ってないしね。

もちろんオープンソースでコミュニティ重視ならgithubになるんだけど、
クローズドならgitlabで十二分に使えると思う。

470 名前:デフォルトの名無しさん mailto:sage [2015/05/17(日) 19:28:04.61 ID:ImkX2Hg5.net]
↑新しい
1
2
3
4
↓古い

1のコミットを3のコミットに含める事について。
これってコンフリクトを起こす可能性があるのであんまりやらないほうがいいと思うんです。
合体させるならコミットを飛ばさなず1,2,3を合体したほうがいい気がするんです。
ここの先輩方はよくやりますか?

471 名前:デフォルトの名無しさん mailto:sage [2015/05/18(月) 02:18:29.93 ID:/pjdhzEd.net]
好きにしろよ。
お前には無理なら止めといた方がいいが。

472 名前:デフォルトの名無しさん mailto:sage [2015/05/18(月) 08:12:32.67 ID:ezOKhhiH.net]
>>466
「あまりやらないほうがいいと思う」のは前提として
「コンフリクトを起こす可能性がある」からだよね?

まず一つ。コンフリクトは起きても問題ない。直せばいいだけ
もう一つ。コミットが小さく分かれていれば、コンフリクトが起きる可能性は少なくなる。
この2点がある。

どうもコンフリクトを怖いもの。起きたら世界の破滅みたいに思っている人がいるみたいだけど
ぜんぜん違う。起きるのは当たり前のことだし、他人が作ったものならまだしも
自分が作っているものなら、どうすればいいかなんてすぐにわかる。

そしてコンフリクトが起きるのはなぜかという話。それはコードが単一責任原則を
満たしていないから簡単にいえば、修正すべきコードがあちこちに分散しており
ようするにコードが汚いから。

コンフリクトは起きたら直せばいいだけだが、
面倒くさいから、起きないほうが楽というのは確か

各コミット(そこでいう1, 2, 3, 4)がそれぞれ小さい修正になっており、
それぞれがちゃんと意味がある単位で分かれていれば、そうそうコンフリクトは起きない。

473 名前:デフォルトの名無しさん mailto:sage [2015/05/18(月) 08:28:44.00 ID:ezOKhhiH.net]
>>466の1のコミットを3のコミットに含めるか?
という質問の答は、含めるべきことであれば含める。
そうしないと逆にコンフリクトが多くなるから。

何故かと言うと、1と3をまとめたい=意味がある単位で考えてまとめるべきこと。
単一責任の原則を満たしており、意味がある単位で小さいコミットというものは、
多くの場合同じ箇所の修正になる。「1と3は同じ箇所の修正」っていうことを覚えておいてね。


そして例えば新しくコードを書いている途中で、既存のバグが見つかったとする。
新しいコードはバグを直さなければ正しく動かない。
だから先にバグを修正するために、5というコミットが必要になったとする。
(どうでもいいが1〜4数値は新しい方を大きくしてくれw)

そうすると5のコミットの続きからに、1〜4をrebaseしなければならない。
その時に3でコンフリクトが発生すると3を直したあと1でもコンフリクトが起きるだろう。
なぜなら、同じ箇所を修正しているから。

さらにむずかしいのは、最終的には1が終わった形にしないといけないわけだけど
3のコンフリクトをどう解決するか?って問題がある。
3の時点で1が終わった形にするわけには行かないんだよ。
3で発生したコンフリクトを直したあとに、1の修正を行うわけだから。

どう直せばいいかわからないものが多数発生する。
これがコンフリクト怖い病になる原因だねw

だからコンフリクトが起きる頻度を少なくするためにも、

1. 各コミットは小さい修正にしておく
2. 意味的にまとめるべきコミットはまとめておく

これを徹底することで、最終的にコンフリクトが起きにくくなる。

474 名前:デフォルトの名無しさん mailto:sage [2015/05/18(月) 09:10:31.18 ID:ezOKhhiH.net]
時間がかかる暗号化キーの生成待ちで暇だから書き込みw

コンフリクトっていうのは同じ場所の修正がかぶると
発生するっていうのを意識しておいた方がいい。
あたりまえだと思うけど、じゃあどうすればいいかまで考えているだろうか?

他人とのコンフリクトは、単純に同じ箇所を修正したときだが、
自分自身とのコンフリクト、rebaseでよく起きるね。(下手だと)

こっちもコンフリクトが起きる原因は同じ箇所の修正だからなんだ。
もし同じ箇所の修正がなければ、rebaseしてコミットの順番を
入れ替えたりしてもコンフリクトは発生しない。

じゃあ同じ箇所の修正はいつ発生するか? それはこういうの
* Aという修正をコミットした
* Bという修正をした
* Aという修正にバグが見つかったので修正した
* Aに機能が足りなかったから追加した
* Aの変数名でタイポしていた

こういうのを放置したまま、作業し続けていざmasterにマージする段階で
コンフリクトが起きてrebaseしなきゃならないってなった場合に
多くのコンフリクトが発生して、大変なことになる。

こういうのは随時rebaseしておくことが重要。
バグとかタイポとかさっさとまとめておく。

* Aとい修正をコミットした
* Bという修正をコミットした

こういうふうコミットを意味がある単位で小さくまとめておけば、
コンフリクトの回数は減るし、直すのも単純になる。

475 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 08:43:08.91 ID:ETXaESJa.net]
>>466
自分なら、普通は避けるな。
でも理由は、ソースの修正箇所がコンフリクトするからじゃないよ。

1->2->3の順にコミットして、1と3をまとめたら、2->1+3になるわけだよね?
このとき、2が1無しでも正しく動作するか分からないからね。
もし、2と1+3を別々のコミットとして履歴に残すなら、どっちのコミットでも
正しく動作することを担保したい。
でも、コミットをまとめるためだけに、(自動テスト環境があったとしても)
2だけのテストをまたやり直すのを避けたい。

だけどそれも、プロジェクトごとのgitの運用ルールによるかもしれない。
コンパイルエラーになるコミットがリモートリポジトリにあるのは構わないとか、
過去のコミットが動かなくなるのは構わないとかのルールになってるなら、
好きなようにまとめるかもしれない。

476 名前:デフォルトの名無しさん [2015/05/19(火) 10:17:56.67 ID:S02ugk9h.net]
すいませんこの流れに出ているコミットのやり方ってどうやるんですか?

477 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 11:07:38.39 ID:0hZF5IeJ.net]
>>471
> このとき、2が1無しでも正しく動作するか分からないからね。
1+3のテストだけやればよくね? 2がテストに通らなくても、
自動テストがあるならすぐにわかるし、最悪テストに通らないときだけやらなければいい。

もし自動テストがなければ、2がテストに通らなくても
「調べようがないので、通らないことがわからない=通っているのと一緒。」 ←重要

それにさ、コミットが多かったら、正しく動くことを担保するのは大変だよ。

* Aが正しく動くことを確認
* Bが正しく動くことを確認
* Cが正しく動くことを確認
* Dが正しく動くことを確認

というつもりだったが、たいていバグはあとから見つかるんで、
あとからAが正しく動いていなかった!と判明したらどうする?

* Aが正しく動かない
* Bが正しく動かない
* Cが正しく動かない
* Dが正しく動かない
* Eで修正

君は、どのコミットでも、正しく動くことを担保したいといったが
A〜Dは全部正しく動かないことが担保されたわけだw
EをAに混ぜ込めば直すことができるが、それをしないならば、A〜Dのコミットは正しく動かないままだよ。

A〜Dは正しく動かないが、でもその時はテストコードがなかったから分からないわけだよね。
それって、つまり「重要」って書いた所と同じ状態なんだが。

過去のコミットが動かないのは構わないというルールなら、そのまま放置でいいかもしれんが(笑)

478 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 12:47:36.82 ID:0hZF5IeJ.net]
>>472
コミットのやり方?

普通にgit addでコミット対象を選んで
git commitでコミットするだけだけど?

コミットの順番を入れ替える話?
それならgit rebase -iだよ。



479 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 14:21:12.63 ID:oDPa6Z2V.net]
>>473
バグの話じゃないでしょ

480 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 17:37:58.03 ID:0hZF5IeJ.net]
>>475
バグの話ではこうなるよね?

つまりこれは「正しく動かないがテストコードがないから自動テストには通る」
という状態をどう考えてるかって話なんだよ。

俺はそれは自動テストに通るってことでいいじゃないかって言っている。

これがいやなら、前のコミットに混ぜて修正するしか無いわけだよ。

で、俺は 前のコミットに混ぜても自動テストに通るなら
それでいいじゃないかとも言ってる。


ちなみに俺は特に大きな理由がない限り、テストケースも含めて
前のコミットに混ぜて、全てのコミットを正しく動くようにしている。

皮肉なことに>>471が言ってる
> どっちのコミットでも正しく動作することを担保したい。
を実践出来てるのはこのやり方なんだ。

481 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 17:38:54.11 ID:0hZF5IeJ.net]
×テストケースも含めて
○(自動)テストコードも含めて

482 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 21:49:21.81 ID:ez1Du3hq.net]
言ってるところのポイントは、1無しで2だけになったコミットが、
コンパイルと自動テストに通るかどうか、わざわざ確認するか?
ってことだな。

確認するなら、影響する各コミットでわざわざそれを確認するのは
面倒くさい、というデメリットが発生する。
確認しないなら、古いコミットは(コミットした当時は通ってたであろう)
コンパイルと自動テストはもう通らないかもしれない、というデメリットが
発生する。

そのデメリットを避けるために、「間をとばしたコミットまとめはしない」
のが>>471だね。

>>476が結局どうしたいのかについては知らない。

483 名前:デフォルトの名無しさん [2015/05/19(火) 23:00:23.53 ID:aRRI5SvP.net]
>>373
git init
touch a; git add a; git commit -m "add a"
touch b; git add b; git commit -m "add b"
touch c; git add c; git commit -m "add c"

"add c"のログを"add a"に加えたいんですがgit rebase -iでどうやるんでしょうか?
pick 07d5e6a a
pick f550031 b
pick 5d295c0 c
このpickをどう書き換えたらbを飛ばしてaにまとめられるのかわかりません
pick 07d5e6a a
pick f550031 b
fixup 5d295c0 c
これだとbにまとまってしまいました
どうやるのか教えてください

484 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 00:37:31.29 ID:NtQ54Cc0.net]
過去から現在までの全コミット情報がローカルに蓄えられるの?
そんな全部なんていらんし、途中からでいいんだけど
どうしたらいいの?

485 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 01:04:01.37 ID:jSvt41UG.net]
>>479

pick 07d5e6a a
fixup 5d295c0 c
pick f550031 b

エディタで順番を入れ替える。

486 名前:デフォルトの名無しさん [2015/05/20(水) 01:50:27.49 ID:TO++lAfh.net]
>>481
できました
これは便利ですね
これでログを今よりも綺麗に出来ました

487 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 09:25:54.36 ID:v+0+7waM.net]
>>480
>>143

488 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 12:05:48.01 ID:qzEPJuIN.net]
>>478
あー、なんかわかってきた。なんでコンパイルも自動テストの実行も何も考えずに出来る作業なのにそれが面倒なんだ?
たかだか数回だろう?と思ったが、なるほど、あんたブランチに含まれるコミット数が多いんだわ。

コミットが何十個にもなってるでしょ?それはコミットをまとめないからだよ。
それから一度に変更(マージ)する内容が多すぎだろうね。

これはもう仕事のやりかた、作業の進め方のレベルの話だね。
まともなレビューが行われているかどうか不安になるな。

まず自動テストをしているならば、その内容をテストしたのは明らかなわけで、
何をレビューするかというと書いてあるテストとコードが正しいか漏れがないかだよ。
人力テストをしてもらうんわけじゃない。

つまりコード見て理解できる程度の量でないといけない。それも短い時間でね。
修正内容がバラバラで、順番も修正箇所もごちゃまぜな大量のコミットを一個ずつ見るのは不可能だし
全部まとめて見ると一度に大量のコードを見ないといけなくなるから大変。
レビューアに負担をかけるようなコードはだめだよ。

あと一連の機能を全部まとめてレビューしてもらってるでしょ?
細かい機能毎にわけないとだめだよ。リファクタリングならリファクタリングだけでマージ
モジュールの追加なら(テストコードも含めて)モジュールだけのマージ
それらをいっぺんにレビューするよりも、分けたほうがレビューアの負担は減るのはわかるよね?

君はいっぺんに全部やろうとするから、コミットまとめたり入れ替えた時の時の再テストが
大変とかいう話になってるが、俺の場合は、細かく分けてマージ可能な最小単位に分割するから、
一つの作業ブランチに含まれるコミットは数個しかない。

君、悪循環に陥ってるよ。コミットをまとめないから、マージできる単位に分割できない。
分割できないから一つのブランチの内容が多くのコミットになる。コミットが多いから並び替えたら
コンパイル・テストが通るか不安になる。面倒くさい。だからコミットをまとめないって。



489 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 12:10:17.30 ID:qzEPJuIN.net]
長々と書いてしまったが、疑問点としてまとめるわ。

一連の機能を作っている時にリファクタリングやモジュールの追加は
絶対に発生する。ミスも発生する。

一連の機能をいっぺんに全部レビューするのはすごく大変だから
小さく分けた方がいい。

ならば一連の機能をリファクタリングだけのブランチ
機能追加だけのブランチ等にわけて、出来た所からマージした方がいいが、
コミットを入れ替えたりまとめたりしないで、どうやってそれを実現するの?

490 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 16:22:35.29 ID:NtQ54Cc0.net]
ちょっと書いてテスト、コミット
を繰り返すならコミット量は自然に増えるよね

491 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 16:38:52.05 ID:qzEPJuIN.net]
>>486
こんな感じにすればいいよ。別にコミットは実際の作業順に合わせる要はない。

* ちょっと書く
* テスト
* ちょっと書く
* テスト

↓ 並び替え(これが失敗することはまずない)

* ちょっと書く
* ちょっと書く
* テスト
* テスト

↓ まとめる(これが失敗することもまずない)

* ちょっと書く
* テスト

この作業を随時やっていく。

・・・つづく

492 名前:483のつづき mailto:sage [2015/05/20(水) 16:47:02.59 ID:qzEPJuIN.net]
ところで「ちょっと書く」と「テスト」を一つにするか?
それは内容によって変わる。

コミットを(まとめるべき内容なら)まとめながら作業するのは一緒だが
リファクタリングの時は「ちょっと書く」と「テスト」はまとめない。

* テスト
* ちょっと書く(リファクタリング)

最終的にこうなる。なぜならリファクタリングしても動作は変わらないはずなので、
コードを書いた前と後で全く同じテストが通るから。
それを確認するためにも、リファクタリング前に(テストが不足している場合は)
テストを書いておき、そしてリファクタリングを行う。

またコミットを入れ替えることを前提にすると「後からテスト駆動」が実現できる。

理想としてはテストを先にやるのがテスト駆動なのだが、現実には後からミスが見つかったりして
コードを書いてからテストを追加することが多い。

実際の作業ではコードを書いてからテストを書いたとしても、そしてそれらが
コード書いてテスト、コード書いてテストって繰り返していたとしても、
テストだけまとめて1つ目のコミット。リファクタリングして2つ目のコミットの形にできる。

これでレビューする人は、問題なくリファクタリングできたことを確認できるわけ。

もちろん仕様変更や機能追加などであれば、テストコードと修正を
分ける意味が無いし、一つにするべきなのでまとめる。

493 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 16:59:43.68 ID:NtQ54Cc0.net]
>>487
ローカルでのコミットはどんどん細かく、プッシュの粒度はテスト通ってから

という方針でやってたんだけど、gitはそういうのに向かないんですね

494 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 17:01:43.80 ID:NtQ54Cc0.net]
そうかこれがあれか、使い捨てブランチ使えってみんな言ってたやつか

じゃあ俺のgitの使い方は間違っているのか

495 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 17:03:34.98 ID:NtQ54Cc0.net]
そうすると、メインのコミットは綺麗な間隔で最小限に抑えられて
かつ テスト用ブランチでどんどこ適当なコードを書きなぐれるのか?
みんなそこまでやってたの? すげーな

496 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 17:07:28.79 ID:qzEPJuIN.net]
>>489
なんで? 意味がある単位で小さくすればいいよ。

でも意味がないのに分割する必要はない。

(ローカルでの作業中に)
例えば、関数名これでいいかな・・・コミット
やっぱり、関数名こっちにしよう・・・コミット
いやいや、やっぱり戻そう・・・コミット
ってタイポしてたよ修正・・・コミット

これってコミットを細かく分けたかったわけじゃない。
作業上の都合でコミットがわかれてしまっただけ。

こういう意味が無いコミットはまとめるべき。もちろん
別々の修正であれば、どんどん細かく分けた方がいい。

細かく分けておくと並び替えや分離がしやすくなるよ。
修正しているうちにコミットがたくさんになって、これ一度に
レビューするの無理だろと思ったら、抜き出して別のブランチにするとかね。

でももし意味が無いコミットに分かれていたら、逆に抜き出すの難しくなるからね。
重要なのは、意味がある単位で小さいコミットに分けておくこと。分ける意味が無いものはまとめること。
これがコミットをうまく管理するコツだよ。

497 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 17:15:41.65 ID:qzEPJuIN.net]
>>491
> みんなそこまでやってたの? すげーな
git歴は2年ぐらいかな?
最初は当然できなかったよw

ただレビュー可能なコードの重要性はわかっていたから、
subversion使っている時、こんな行き当たりばったりの修正履歴じゃ
レビューできないだろっていう認識はあった。
(計画的にやれって思うかもしれないが、ミスや漏れどうしても発生する)

gitを使ってからはどうすればレビューしやすくなるか?を
考えてコミットを作るようにしていたよ。
(ちなみにどちらかと言うと俺はレビュー依頼する側じゃなてレビューする方だけどね)

498 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 17:18:24.50 ID:zo5n24wv.net]
>>466
そのケースで実際にコンフリクトが発生する場合は
2 の粒度がでかすぎるってのがよくあるパターンなので、
2 を分割して 4←3+2a+1←2b という形になるようにしている



499 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 21:06:38.40 ID:vVwXnjIW.net]
>>484
>あー、なんかわかってきた。なんでコンパイルも自動テストの実行も何も考えずに出来る作業なのにそれが面倒なんだ?
>たかだか数回だろう?と思ったが、なるほど、あんたブランチに含まれるコミット数が多いんだわ。

コンパイルと自動テストが数秒で終わるなら、この理論が成り立つな。

たぶん>>484の場合は、例えば分野が小さなWebサイトの開発とかで、
そもそもの開発規模や自動テストの規模が少ないとか、昔のコミットや
昔の挙動を残しておいても問題調査の役に立つことが少ないとか、そういう
特徴があるんだろう。

500 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 22:00:00.11 ID:qzEPJuIN.net]
> コンパイルと自動テストが数秒で終わるなら、この理論が成り立つな。

数秒で終わらないのが困るのなら、大量にあるコミットが
ある状態で、rebaseとかどうするのさ?

数秒で終わらないなら、逆にコミット減らすべきだろ。
矛盾してるぞw

あと中間ファイルが残ってるはずだから、
適切にソースコードが分割されて依存関係が少ないなら
一つ一つのコミットの修正が僅かなはずなので
コンパイルにそんなに時間がかかるはずがない。

501 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 22:05:10.63 ID:qzEPJuIN.net]
> 昔のコミットや昔の挙動を残しておいても
> 問題調査の役に立つことが少ないとか

これも逆に不要なコミットは消すべきだよね。

何か勘違いしてる(他の人にされそう)だから
念の為に言っておくけど、俺が言ってるのは、
本来一つであるべきコミットは一つにするって話で
何でもかんでもまとめろって話じゃない。

だから当然、昔のコミットは残ってる。
調査に使うよ。git bisectで二分探索で。

でだ、この時大量にコミットがあるとその分探索の回数増えるわけで、
コンパイルと自動テストが数秒で終わらないとしたら大変だよなぁ?

問題調査のためにも無駄なコミット減らしたほうがいいって結論になるぜ?

502 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 22:19:59.27 ID:MjY1jVeQ.net]
>>486
>数秒で終わらないのが困るのなら、大量にあるコミットが
>ある状態で、rebaseとかどうするのさ?

だから、「間を飛ばしたコミットまとめをしない」って言ってるんじゃないのか?
A→B→C→Dの順にコミットされてるなら、連続したBCやBCDをまとめるのは
コンパイルや自動テストに問題ないから。

503 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 22:30:23.27 ID:qzEPJuIN.net]
>>498
rebaseって二つの複数の意味があるから気をつけないといけないなw

master(1)
    \A→B→C→D

で開発をはじめてさ、他の人のマージが先に加わった時、

master(1) → master(2)
    \A→B→C→D

master(2)からの開発にrebaseするという話。

master(1) → master(2)
             \A→B→C→D

この時、A〜Dまですべてが書き換わるわけだから、
コンパイルと自動テストをするわけでしょ?

時間がかかるのならなおのこと、まとめておいたほうがいいでしょ。

master(1) → master(2)
             \AC→B→D

もしかしてこのタイプのrebaseも禁止してるのかな?
なんか下手なコミットのせいで、時間が掛かるから便利なものを
封印せざるを得ない状態を作っているようにしか見えない。

504 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 22:49:40.28 ID:MjY1jVeQ.net]
その場合、[A→B→C→D]をまとめたものをmaster(3)にすればいいと思うのだが

なんでfeatureブランチの各コミットを直接masterにつなごうとするのかがよく分からない
このケースだと、AC、B、Dがそれぞれ別ブランチになってないのが問題なのでは?

505 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 22:50:55.88 ID:qzEPJuIN.net]
もう一つ「もしかしてこのタイプのrebaseも禁止してるのかな?」
と思った理由もかいておく。

A, B, C, D が同じ箇所の修正(前のコミットのやり直し)をして
本来一つであるべきものが分かれていたとする。

そしてmaster(2)にrebaesしたときにAでコンフリクトが発生したとする
master(1) → master(2)
             \A→B→C→D

そうすると、B, C, D も同じ箇所の修正だから
必然的に、BでもCでもDでもコンフリクトが発生するわけよ。

わー、大変だ。コンフリクトだ。しかもこれさっき直したじゃないか?
コンフリクトわけわからん。わー。ってなってるはず。

同じ箇所の修正を一つにまとめておけば、コンフリクトの修正も一回だけだよ。

関連あるコミットをまとめておかないから、コンフリクトが沢山発生する。
時間かかるし正しく修正できたわからんからrebaseしない方がいい!ってなってると思う。

コミットが沢山にわかれている → コンフリクトが沢山発生する → そうなるからrebase禁止 と
考えているのだろうが、本当の原因はコミットが沢山にわかれていて、それが意味もない順番でごちゃごちゃ並んでることだから。

関連あるコミットは随時まとめておく。順番も適切な順番になおしておく。そうしておけばコンフリクトの発生は少ない。
コミットの数も少なくなるし、だからrebaseしてもコンパイルにも自動テストに時間はかからなくなる。

コミットは意味がある形で最小限に抑えられているから、レビューも楽になる。
後から問題の調査をするときも、存在理由がわからない大量の謎コミットを見る必要もなくなる。
gitの機能を最大限使うことが出来るわけよ。

ってもう何回も言ってるねw 毎回長文でw

506 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 22:54:58.15 ID:qzEPJuIN.net]
>>500
> その場合、[A→B→C→D]をまとめたものをmaster(3)にすればいいと思うのだが

その場合ってどの場合?

一人で開発してるんじゃないんだよ。
自分が開発をし始めた時からコードは変わっているから
これをmaster(3)になんか出来ない。

他人の仕事を消してしまうじゃないか。

他人の仕事と自分の仕事を合わせてないと行けないんだよ。
コンフリクトが起きようと起きまいとね。

コミットが沢山あればあるだけ、全てのコミットが
正しく動くか再テストをする必要がある。

507 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 22:58:20.56 ID:MjY1jVeQ.net]
何となくだが、

>master(1) → master(2)
>             \AC→B→D

これを許してるってことは、rebase後にACとBのコンパイル確認と自動テストをチームの義務としてない、
最新のDが自動テストに通ればよい、と暗黙のうちに言っているような気がするのだが…。

これが許されるチームなら、各メンバーが自由にコミットをまとめても、たしかに問題ないな。

508 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 23:01:15.60 ID:qzEPJuIN.net]
>>500
> このケースだと、AC、B、Dがそれぞれ別ブランチになってないのが問題なのでは?

別ブランチにできるかどうかは内容次第だね。
コミットとしては一つ一つ取り込めたとしても
機能としては一つ一つでは完成しないこともある。

で、俺は一連の作業中に、先にマージ可能なものができたら、
別ブランチに抜き取って先にマージした方がいいとも書いた。

そのためにも、コミットをそのまま放置するのではなく
関連があるものはまとめていくようにって言ってるんだよ。
関連あるコミットがバラバラだったら、別のブランチに抜き出すのは大変だからね。
それもあって、そのケースでAとCをまとめたんだよ。

つまり最初のAとCが関係ある内容ならまとめますか?の質問の
答えはまとめた方がいいってこと。

で、これやるとコンフリクトが〜とかいって、まとめない方がいい
並び替えないほうがいいって言ってる人がいるわけよ。



509 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 23:05:27.02 ID:qzEPJuIN.net]
>>503
> これを許してるってことは、rebase後にACとBのコンパイル確認と自動テストをチームの義務としてない、
> 最新のDが自動テストに通ればよい、と暗黙のうちに言っているような気がするのだが…。

話がループしているがw

rebase後にACとBのコンパイルと自動テストをスレばいいだけだろう?
そんなのすぐに終わる。たった2回(ACとB)じゃないか?

すぐに終わらないのは、コミットがたくさんあるからだよ。
そりゃコミットが10個も20個もあれば、10回20回もコンパイルと自動テストをしなきゃならんだろうさ。
コミットがたくさんあるために、rebaseを許さない状況になってしまっている。

rebaseってさ、gitの基本じゃん?
チュートリアルの最初のほうで出てくる作業だよ。
許されるも何もこれは普通にやるべきことだよ。

ね? 下手なコミットのせいで普通にやることがやれない状況になってしまっている。

コミットがたくさんあるために、rebase(master(2)への付け替え)を
封印してしまってるでしょ?

510 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 23:19:51.82 ID:MjY1jVeQ.net]
>>504
AとCをまとめますか?の回答には「そう思う」だが、
AとBとDをまとめて一つのブランチにして、その一本のブランチの上でAとBとDの開発作業をしますか?の回答には「そう思わない」だな。
AとBとDはブランチを分けるな。

もしブランチを分けとけば、レビュー前?Push前?にAのバグに気付いても、AとCのコミットは連続してるだろうからな。
逆に、レビュー後?Push後?に問題に気付いたなら、自分の負けを認めてバグ修正のコミットを残す。
一方、後になって「コミットが連続しない、AとBとDをブランチに分けておけば良かった〜」なんてなるようなら、自分の腕のなさを呪ってブランチを切りなおす???かな。

511 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 23:21:45.30 ID:MjY1jVeQ.net]
>>505
>そんなのすぐに終わる。たった2回(ACとB)じゃないか?

「そんなのすぐに終わる」って前提があるから、話がかみ合わないんだと思うが…w

512 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 23:28:53.73 ID:qzEPJuIN.net]
> AとBとDをまとめて一つのブランチにして、その一本のブランチの上でAとBとDの開発作業をしますか?の回答には「そう思わない」だな。
> AとBとDはブランチを分けるな。

分けたいなら後で分ければよくね?

作業用ブランチなんだからそれはどっちでもいい話だと思うが。

AとBとDがお互い前のコミットに依存している場合、
最初にブランチを分けておくと、ごちゃごちゃしてくると思うが。

Aを作ったはいいけれど本当にこれでいいかは、そのAを使う
Bを作らないとはっきりしないことだってあるしさ。

残念ながら人間はミスを犯すんで、どうしても後からバグを発見する。
後から修正をするものだよ。

一つのブランチで作業しておいて、ある程度納得がいったら別ブランチに
抜き出せばいいと思うけど。コミットが整理されていれば簡単な作業だし。

それとレビューは間違いを見つけるものだから、修正が入るのはあたりまえだよ。
レビュー中はまだ作業中段階。作業中のごみコミットを残したままマージする必要はないよ。
一連のレビューが終わったら整理すればいいだけの話。整理し終わってそこで完成。

513 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 23:30:22.13 ID:qzEPJuIN.net]
>>507
> 「そんなのすぐに終わる」って前提があるから、話がかみ合わないんだと思うが…w

そんなのすぐに終わらないって前提がおかしいんだよ。

だって開発中に何度もコミットしてるじゃん?
その段階でコンパイルと自動テストしてるじゃん?

コミットがたくさんあるのなら、その分だけやってるわけじゃん

開発中にすぐに終わらない作業を何回もやってるのか?
まずそれを解決した方がいいぞw

514 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 23:35:21.24 ID:qzEPJuIN.net]
補足すると、コンパイルがすぐに終わらないってのはおかしい。

なぜなら、コミットの前後で修正されるファイルは少しだから
該当ファイル以外のオブジェクトファイルはそのまま使えるわけで
差分のみのコンパイルしかしないはずだから。

そして自動テストは作業中は関連のあるところだけテストすれば良い。
で、最終段階(もう変更がないと思った時点)で全部やればいいんだよ。

最後にブランチ内の全コミットをテストするのか!という疑問に対しては
だからぁ、コミット数が多いから大変なんじゃねぇかそれ。という話。

関連あるものはまとめろ。先にマージできるのは別ブランチに分けろ。
コミットは小さく分けろ。だが無駄なコミットはまとめろ。

515 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 23:39:45.06 ID:MjY1jVeQ.net]
例えばC言語だったらヘッダファイルを書き換えれば多くのソースファイルに影響するし、
自動テストのテストケースの中には「アプリケーションの再起動」が含まれていることもあるかもしれない。

例えばWebサイトの開発とかでは、そういうのほとんどないだろうし、ぶっちゃけ過去より今が大事なのかもしれない。
(過去の状態が「Webサイトの純然たる作りかけ」とかだったら、そのスナップショットを完全に残すことに価値はないだろうし)

だから、全部のケースで使えるやり方ではないと思うが、否定する気はないよ。
その方が、短期的な効率は出るだろうしさ。

516 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 23:56:43.98 ID:/feEo/hs.net]
ブランチってほんとにみんな使ってる?
gitのブランチって使いづらくね?

517 名前:デフォルトの名無しさん [2015/05/21(木) 00:28:17.62 ID:0lqSGmSk.net]
プルリクエストを送るときにmasterブランチ以外のブランチで作るのが定番ということで
fix_numberブランチを作って"fix number value"ってログを書いてコミットしました
その後はプッシュする前に最新の情報を取得するべきって聞いたのでgit pullしました
そしたら
There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull(1) for details

git pull <remote> <branch>

If you wish to set tracking information for this branch you can do so with:

git branch --set-upstream-to=origin/<branch> fix_number_value
ってでました
これってリポート上のmasterブランチを指定したらいいんでしょうか?
実践で誰かと一緒に開発したことがないので怖くてどうしたらいいのかわかりません
ご教示おねぎあします

518 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 00:41:14.37 ID:/NlBmKMh.net]
>>512
俺もそう思ってた

でもわかった、gitのブランチにはブランチモデルが必要なんだ
自由になんでも出来すぎるからブランチモデルで制約を付ける

「A successful Git branching model」てのを見つけて、
git-flowを使うようになってからだいぶまとまりが出来てきた

その後で他にもいくつかブランチモデルがあることも知った

今はブロジェクトの初めに
git-flowを使って「A successful Git branching model」をベースにやります。変更点はこれこれ。
みたいに宣言することにしてる。

だからお願い。VisualStudioにもgit-flow付けて、Microsoftさん。



519 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 11:22:31.08 ID:PvdFF4ay.net]
>>511
なんか引っかかるねw

短期的じゃなくて長期的な効率が出てる。

ヘッダを書き換えれば多くのソースファイルに影響する話なら知ってる。
そうならないためのやり方があるのは知ってるかい?
ビルド依存を回避するような作り方をするんだよ。

あんたのやり方だと普段の開発から時間かかってしょうがないでしょ?
ちょっと修正するたびにビルドに多く時間がかかってるはずだよね。

それはもはやgitとは関係ない話だよ。

それからウェブの開発ではないって思ってるかもしれないけど、
今はウェブの開発でもビルド行う。

> だから、全部のケースで使えるやり方ではないと思うが、否定する気はないよ。
> その方が、短期的な効率は出るだろうしさ。
なんか、俺が知らないと思ってそういうこと言っているような雰囲気だが
俺知ってるからね? ウェブだけじゃなくてビルドが必要な開発も。

520 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 11:33:41.78 ID:PvdFF4ay.net]
何が引っかかるかわかったわ。

最近の若いもんは〜みたいな発言になってるからだ。

言葉の節々に、ウェブ開発をしてるもんは〜とか
テストしてるわけがないはずだ〜とか
過去はどうでもいいと思ってるはずだ〜とか
まともな自分の想像ばかり言ってる。

521 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 11:34:23.74 ID:PvdFF4ay.net]
なぜか書き間違えたw

× まともな自分の想像ばかり言ってる。
○ 的はずれな自分の想像ばかり言ってる。

522 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 11:55:03.21 ID:PvdFF4ay.net]
> 自動テストのテストケースの中には「アプリケーションの再起動」が含まれていることもあるかもしれない。
これに関してはだから何なんだ?といいたい。

(ごみ)コミットがたくさんあって、コミット毎に全部
アプリケーションの再起動を行っているのか?

だとしたら、テスト効率が極めて悪い。

10個のコミットがあって、それぞれのテストに
1時間かかるとしたら10時間じゃないか?

俺ならまずおおむね十分だと思われるテストだけを行って
コミットを減らしてからテストするね。5個に減らせば5時間で済む。

コミットしてテストした後で、さっきのコミットに混ぜるべきコードをコミットしてテストしたら
さっきテストした時間は無駄になるじゃないか。

後から修正が入るかもしれないような不安定な所のテストに時間はかけない。もう修正は入らないなって
思った時にちゃんとテストをする。コミットを減らしてテストしたらテスト時間も減る。

git以前にテストのやり方そのものを見なおしたほうがいいよ。
効率を考えないで流れ作業をこなしているかのような開発になってる。

523 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 12:05:21.48 ID:PvdFF4ay.net]
>>512
> ブランチってほんとにみんな使ってる?
> gitのブランチって使いづらくね?

一人で開発してるとか?

使いづらいかどうかは置いといて
使わないと、複数人で並行して開発できないよ。

使いづらいと思ったことはないな。
最初の頃は苦労したけど、それはgitのブランチのせいではなくて
自分の技術力不足だってわかっていたし。

作者のリーナスがどうしても必要だって思って作った道具であり
gitの機能も必要だと思っているからこそ作ってるわけだしさ。

もっといい案があるというなら別だけど、わかってないのに
リーナスが作ったものに、ケチつけるなんてだいそれたことなんか出来んってw

わかった今ならよく出来てるって思うよ。

524 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 22:28:03.52 ID:fr6zPWaF.net]
Windowsでウィルススキャンソフトが入ってる状態でgit checkoutは時間がかかり過ぎるから、使いづらく感じるかもな

525 名前:デフォルトの名無しさん mailto:sage [2015/05/22(金) 00:01:21.71 ID:6DaqA/5u.net]
>>519
リーナスだろうと関係ないよ
リーナスには使いやすいものでも
俺には使いにくいってのは普通にあるよ

526 名前:デフォルトの名無しさん [2015/05/22(金) 22:43:05.39 ID:SSdLqWaE.net]
>>512 ブランチってほんとにみんな使ってる?
俺は一人開発だけど、master と daily の二つの branch を使っているよ。git 使い始
めの一年ぐらいは master だけだったけど。

master の commit/merge は version 番号より少し細かい粒度で行っている。daily
branch は bug/issue tracking の粒度より少し細かいぐらいで commit している。とい
うより、daily branch の commit message の殆どは bug/issue 番号に紐付けている。
Version 番号の粒度の履歴に bug tracking 粒度の履歴を残したくない。

ちなみに bug/issue tracking はソースとは別ディレクトリのテキスト・ファイルで
git 管理している。


>>512 gitのブランチって使いづらくね?
Time stamp が checkout 時刻に強制変更されてしまうのが使いにくいと感ずる。make
compile 時の便利さは分かるが、ファイルの time stamp 自体は重要な属性だから。俺
が git を作ったならば、time stamp を commit 時の時刻にするオプションを絶対設け
ていた。

実際には commit 時刻に変更する script を書いてあるけれど、殆ど使っていないの実
情だ。その script が必要になるのは master 側だけだから。そして その master 側で
push するときには、time stamp など構っていれらない状態が殆どだという実情なのが
情けない。

527 名前:デフォルトの名無しさん mailto:sage [2015/05/23(土) 16:05:57.79 ID:4OfmjrZC.net]
プロジェクトがすごく小さい場合には、
途中経過の整合性が合わなくなるのが許されたり、
途中経過の整合性を合わせるためのテストやり直しが許されることがあるんだな

pushした修正がバグってたからって、pushしたもんをリベースで打ち消すのはご法度と思っていたが
プロジェクトの大きさによってはそれもあり得るということか

528 名前:デフォルトの名無しさん mailto:sage [2015/05/23(土) 17:21:41.69 ID:x743ZDZ3.net]
pushした先がリベースが許されるブランチかそうでないブランチかって違いであってプロジェクトの大きさは関係ないんじゃないの?



529 名前:デフォルトの名無しさん mailto:sage [2015/05/23(土) 17:24:16.06 ID:x743ZDZ3.net]
いや逆か。
push後のリベースが許されるブランチを運用出来るように、プロジェクトをサブプロジェクトに分割したほうがgitを有用に使えるってことなのかもね。

530 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 00:38:55.87 ID:NuukhrjT.net]
push後のリベースが許されるブランチ=他の誰も見ていないブランチ?
サブプロジェクトどころか、一人プロジェクトだな

531 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 10:38:28.38 ID:GI5iGoR+.net]
話題がループしてるな。もうすこし世の流れを学んだ方がいいよ。
gitだと特に、ブランチの運用によって前提が大きく変わる。

GitHub flowならチケット1つにつき1つ(1バグにつき1つ)ブランチができるから、
それぞれのブランチの寿命は数分〜長くとも数日程度であって、その間はブランチ上では基本1人でしか変更しない。
だからpushしたブランチをrebaseしてもまったく問題ない。
むしろレビューで指摘されたようなtypoや微修正が残ってると後で見にくい。積極的にrebaseを使ってほしい

532 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 11:16:37.86 ID:VWanxcqX.net]
>>526
ん〜と、前提が大ブランチになってるとそうかもしれないけど

Gitの得意技は作業単位で小さなブランチを山ほど作れる所にあるから
得意技を積極的に使った方がお得な気がするな


うちのチームは去年強制的にsvnからgitに移行してからコミット数もブランチ数も20倍くらいに増えた

その代わり、細かくコミットしろ、作業単位でブランチを分けろ
って、半年くらいは口うるさく言い続ける必要があったけどね

レビューの時にコミットツリー図を見ながら
ここはこういう意図で、こういう風にブランチを分けて欲しかった、とか
ややこしいコンフリクトが生じた時に
どういう手順ならマージが簡単だったかとか
具体的に教えたり、みんなで考えたりした

新しい文化を根付かせるのは大変だよ、いつでもさ

533 名前:デフォルトの名無しさん [2015/05/24(日) 14:14:44.04 ID:J9ZjzLe3.net]
>>527 だからpushしたブランチをrebaseしてもまったく問題ない。

branch を push する意味が理解できん。数分から数日しか存在しないブランチを何処
に push するの?

レビューアーの git に同じブランチを設けてリモート・ブランチにしているの?

534 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 15:41:15.45 ID:1k2HbjOC.net]
ブランチを公開する際に中央リポジトリにpushする形式が考えられる

535 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 19:35:16.30 ID:LHzJ6dIN.net]
今コミットした後にgit pullしたらリモートの最新のログ(1個だけ)が追加されてしまいまして
今コミットしたログの後にそのリモートのログが来てしまいました
git rebase -iで今コミットしたログを最新にしたいので順番を書き換えたいんですがリモートのログが表示されません。ローカルのログしか表示されません
git rebase -i HEAD^^^^^^みたいに^を増やしても出てきません
これってどうしたらいいんでしょうか?

536 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 19:41:30.07 ID:Ewhf1zLw.net]
>>528
となると、やはり 本体はSVNで、ローカルはgitで
別に管理したほうが全体が幸せになりそうだな

537 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 19:50:34.06 ID:Jl9gFOkM.net]
レビューが終わって共有ブランチにpushしてからバグが見つかった場合に
共有ブランチ上でrebaseするんだったら、ブランチの生存期間を超えて共有ブランチ上で修正を続けているように見えるな

538 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 20:03:35.12 ID:Jl9gFOkM.net]
>>532
この人の場合、バグを修正したというコミットをmastarに残したくないのに、SVNだとコミットを後から修正できないのが不満だ
(それがレビューの邪魔?)というのが、gitを使っている一番の理由だろう



539 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 21:34:38.73 ID:VWanxcqX.net]
>>532
それはいい解の一つだと思う。特に移行期には。
うちも、svnから一気にgitに移行するか、git-svnを使うか結構悩んだ。

でも最後は俺がsvnとgitの両方を使うのが面倒くさいという判断で一気にgitに移行する方を選んだ。
当時の対象プロジェクトがちょうど区切り良く、
過去ログを捨てて一気に乗り換えることができるタイミンングだったのと、
フロアをまたがっているとはいえ、同じビルの中にチームの全員がいるので、なんかあったら顔を合わせて相談できる状態だったから決断できた。

最初はトラブル続出で、「判断間違えたかな?」と内心悩んでいたけど
結局馴染んでくればgitの方が扱いやすくなってきたよ。

しばらくして、VisualStudioがgit標準対応した時は「よっしゃ!」ってなった。
(でも日本語変だよマイクロソフトのgit)

540 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 22:05:23.23 ID:VWanxcqX.net]
>>534
おれ>>528
「この人の場合」が俺のことなのか、ほかの人なのか読み取れなかったんだけど、

俺がgit使ってる(使わせてる)理由の一番大きい所は
「間違えてリポジトリ壊しても俺が直してやる。安心してどんどんブランチ作れ!細かくコミットしまくれ!」って言える所だな。

俺の場合、バグとか間違ったコミットとかも積極的に残しておくことを推奨している。
レビューもそのままで特に問題は無かったな。
でも、「間違えても大丈夫」という安心感がないとみんなブランチ活用してくれないんだよ。

特に問題だったのは(svn使っていた頃の話ね)
何ヶ月もたってから、コードのここの部分て、修正入っているんだけど、意図がわからない、当時の担当者はもう居ない。何て事がよくあった。
svnだと、ブランチ&マージとかコミットとかは結構大事(おおごと)で
みんな、自分の手元で完全に書き終わってからしかコミットしてくれなかった。
ブランチ&マージはリーダーだけがやる仕事みたいな感じだったし。
そうなると、ログ上いっぺんにあっちこっち修正が入っている中で、特定個所の意図を読み取るのがものすごく難しくて困ったんだ。

今は「マージ操作間違えても俺が直してやる。
安心して、”変数名を書き換える”様な小さな修正でも各自でブランチ作って作業してくれ。」って言える。
これだけでも後から意図を読み取るのは随分楽になったよ。

541 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 22:19:55.92 ID:mdHWC0Am.net]
状況によるけどコミット分けたほうが見やすいというのは複数の作業単位(ブランチ)に分けるものを
一つのブランチに押しこんでるからじゃないの
機能まるまる追加とかなら経過をコミットで分けたほうがわかりやすいというのはわからんし

>>533
閉じたブランチ使わないでバグフィクス用のブランチで修正するのが筋だろう

>>531
リセットでヘッド戻して新しくブランチ切ってそっちにコミットして元のブランチに更新取り込んで新しいブランチをマージ
次から最初からブランチ切っとけばこんなことで困らん

542 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 03:10:39.76 ID:WhsXE+Ib.net]
>>536
個人でブランチ作ってコミットしたあと、どうすればいいの?
そのブランチを本家に取り込ませるの?

543 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 05:59:36.31 ID:/VFybrtg.net]
> でも、「間違えても大丈夫」という安心感がないとみんなブランチ活用してくれないんだよ。

これ大事よね
master に

544 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 06:01:10.35 ID:/VFybrtg.net]
途中で書きこんでしまった

> でも、「間違えても大丈夫」という安心感がないとみんなブランチ活用してくれないんだよ。

これ大事よね
master に wip と fix typo が積み重なってた時は流石に萎えたけど

545 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 08:14:58.07 ID:y6DNlXTS.net]
>>540
>master に wip と fix typo が積み重なってた時は流石に萎えたけど
そういうのを、それがmasterにあろうと自分でリベースして消すのがその人のやり方なんだろう

546 名前:523 mailto:sage [2015/05/25(月) 09:19:23.83 ID:E69UDjHE.net]
>>529
> >>527 だからpushしたブランチをrebaseしてもまったく問題ない。
>
> branch を push する意味が理解できん。数分から数日しか存在しないブランチを何処
> に push するの?
>
> レビューアーの git に同じブランチを設けてリモート・ブランチにしているの?

自分が作成・変更したブランチをpushする先はclone元のリポジトリの同名ブランチ。

典型的にはGitHub(GitLab)上には共有リポジトリがひとつしか存在しない。そのリポジトリはForkしない。ひとつのリポジトリのなかでブランチを使ってPull Request(Merge Request)する

547 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 13:36:42.28 ID:XuKAmWn9.net]
中央リポジトリにみんながpushしまくる方式で運用してるのか、Pull Request方式で運用してるのか、
まずその辺から説明してくれないとgitの運用方式に自由度が有り過ぎて話が噛み合わん

548 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 13:49:29.09 ID:XuKAmWn9.net]
>>531
あんたがやりたいことはrebase本来の一番基本的な使い方で、rebase -iで自分で直接順番操作する必要は無い
検索すりゃ方法わかると思うので調べてみてくれ



549 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 22:51:38.00 ID:o/eCAQPj.net]
共有ブランチ上のバグを直すために共有ブランチ上のコミットを書き換えるんだとしたら、
書き換え前のコミットををベースにしている人への配慮が必要そうだな

各作業者に「共有ブランチ上のコミットを書き換えたいから、各自のブランチをリベース
してください」って頼んで回れる環境が必要だ

550 名前:212 mailto:sage [2015/05/25(月) 23:42:12.33 ID:fVXVPz7E.net]
gitってなんでMakeFileにuninstallが用意されてないんですか?
アンインストール作業が苦痛なんですよ
makeだけでアンインストールさせてくださいよ

551 名前:538 mailto:sage [2015/05/26(火) 00:30:58.55 ID:VHuDuKFu.net]
>>543
> 中央リポジトリにみんながpushしまくる方式で運用してるのか、Pull Request方式で運用してるのか、
> まずその辺から説明してくれないとgitの運用方式に自由度が有り過ぎて話が噛み合わん

中央リポジトリにみんながpushしまくって、中央リポジトリのTopicブランチ(各人がpushしたブランチ)から同じ中央リポジトリのmasterに向けてPull Requestする。
これが GitHub flow な。

元が「 >>526 Pushしたブランチは書き換えてはならん」への反論だから、
そうでない運用もごく一般的、という主張をしたということ。

552 名前:デフォルトの名無しさん mailto:sage [2015/05/26(火) 08:35:26.55 ID:n+9g7Zgu.net]
「各メンバーが、個人用ブランチをリモートリポジトリ上に持っている」
これじゃ>>526への反論になってないっていうか、>>526が言ってることそのままだな

553 名前:デフォルトの名無しさん mailto:sage [2015/05/26(火) 17:27:09.33 ID:sKFLbSMM.net]
>>545
そうだよ。だから、それができる範囲なら共有ブランチでもリベースして良いんだよ。

554 名前:デフォルトの名無しさん mailto:sage [2015/05/26(火) 17:39:03.82 ID:sKFLbSMM.net]
>>548
個人用ブランチは作成者だけが見るわけじゃないから>>526とは違うな。
>>526は、ブランチを公開することと、一部の人間がそのブランチに依存することと、不特定多数の人間が依存することの区別がついてないんじゃないか?
単に極論言って煽ってるだけかもしれないけどね。

555 名前:デフォルトの名無しさん mailto:sage [2015/05/26(火) 18:06:24.50 ID:2IsijlAj.net]
ところでそれだけ熱心なブランチ管理のpush,rebase制限はどうやってる?
規約任せかツールかスクリプトか

556 名前:デフォルトの名無しさん mailto:sage [2015/05/26(火) 18:23:29.30 ID:O0gIeBts.net]
うちは原則push -f禁止でやってるんで、みんながpushするサーバーにはreceive.denyNonFastforwardsとreceive.denyDeletesを設定してる

557 名前:デフォルトの名無しさん mailto:sage [2015/05/26(火) 20:10:30.68 ID:qT5tL8rR.net]
横だがどうやって禁止するのかと思ったらちゃんとそういうコンフィグが用意されてるのか
一回オプション総ざらいしてみよう

558 名前:デフォルトの名無しさん mailto:sage [2015/05/26(火) 22:07:42.46 ID:1ouiCH4F.net]
>>549
で、>>523が言ってる「プロジェクトの規模が小さい場合には
それができる」って話につながってくるのか…。



559 名前:デフォルトの名無しさん mailto:sage [2015/05/26(火) 23:55:53.54 ID:2IsijlAj.net]
>>553
それブランチごとじゃなくて一律だからアクセス制限にはならないぞ

560 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 12:17:18.05 ID:98FdFg1V.net]
Git 2.4.2
https://github.com/git/git/releases/tag/v2.4.2

561 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 20:55:03.14 ID:2hiQrePQ.net]
特定のファイルを特定の履歴に戻すのはどうやるんでしょうか?
a.txtをHEAD@{12}のa.txtの内容にしたいんです
git reset HEAD@{12} a.txtじゃ戻りませんでした

562 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 21:23:55.63 ID:q0XD6tk+.net]
checkoutせよ

563 名前:デフォルトの名無しさん mailto:sage [2015/06/01(月) 22:34:02.79 ID:6w2KJtLO.net]
git init
git add -A
このaddを取り消したいんですがgit reset HEADをやると
fatal: ambiguous argument 'HEAD': unknown revision or path not in the working tree.
ってでます
git add -Aで変更をインデックスに追加されているわけだからHEADを指定したらリセットできると思ったんですが何で出来ないんですか?

564 名前:デフォルトの名無しさん mailto:sage [2015/06/01(月) 22:37:39.31 ID:wXX1PCBE.net]
まだHEADに相当するコミットが存在しないから

565 名前:デフォルトの名無しさん mailto:sage [2015/06/01(月) 22:37:41.39 ID:60FC1uF1.net]
1回もコミットしてないとか?

566 名前:デフォルトの名無しさん mailto:sage [2015/06/01(月) 22:43:38.24 ID:wXX1PCBE.net]
おれはそんなとき.gitをざっくり消したりしてたが、
ぐぐると git rm --cached が使えるみたいだな

567 名前:デフォルトの名無しさん mailto:sage [2015/06/02(火) 10:41:16.23 ID:2Bq+WaXR.net]
git rebaseでどこまでまとめるべきなのかわかりません
例えばデータベースの文字コードの設定の修正と、スタイルシートを変更した2点の場合
一緒にまとめたほうがいいんでしょうか?

568 名前:デフォルトの名無しさん mailto:sage [2015/06/02(火) 22:36:32.71 ID:ENh0ws/u.net]
Windows版のバージョンは上がらんのかえ



569 名前:デフォルトの名無しさん mailto:sage [2015/06/02(火) 22:37:29.49 ID:dwjHRJAm.net]
自分でコンパイルしろよ

570 名前:デフォルトの名無しさん mailto:sage [2015/06/02(火) 22:37:35.29 ID:H1H2VilB.net]
>>563
その二つならまとめない。

もし、データベースの文字コードを変更したことによりスタイルシートの変更が必要になったのであればぎりぎりまとめてもいい。

571 名前:デフォルトの名無しさん mailto:sage [2015/06/03(水) 01:22:55.03 ID:knJmPdD6.net]
>>563
そういうgit運用の話は、「管理者の意見に従うべき」

個人用or自分が管理者なら、好きなようにやっていい。

572 名前:デフォルトの名無しさん mailto:sage [2015/06/03(水) 01:42:10.75 ID:3kJPkUc2.net]
>>567
少しは助言してやれよ

573 名前:デフォルトの名無しさん mailto:sage [2015/06/03(水) 03:55:40.59 ID:cOL0IOxC.net]
どのやり方が良いかなんて決まっているわけじゃない
色々試して自分が一番しっくりする形を探すか
最も採用されていると思えるやり方というのを見出してそれを選択するか
有名どころのオープンソースプロジェクトの方針を色々と見てくるといい

574 名前:デフォルトの名無しさん mailto:sage [2015/06/03(水) 05:32:16.44 ID:5OGKD7dq.net]
俺がまとめる基準はそのまとめたコミットに判り易いひとつのタイトルをつけられるかどうかあたり
でも優先されるべきはそのリポジトリの管理方針なのは間違いない

575 名前:デフォルトの名無しさん mailto:sage [2015/06/03(水) 10:17:17.28 ID:qaWpPbOF.net]
ところでpost commit mail送るのに何使ってる?

うちはmultimail使ってるがなんかしっくり来ない

576 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 01:27:40.14 ID:FZpfA7xp.net]
>>569
お前はどうやってるんだよ

577 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 10:38:54.51 ID:ixdJmRIH.net]
俺は初心者の頃にここでコミットをまとめるなって言ってこのスレを炎上させた初心者+だけどさ
その時はコミットをまとめろって言われたからソースコードのバージョン毎にコミットを全部まとめたよ
一体まとめろ!まとめるな!のこのスレの意見を統一してもらわないと俺みたいな初心者が無駄な道を通ることになる

1. initial commit
---- ここから -----
2. save
3. type
4. ○○実装
5.save
6.○○実装
7.typo
8.ファイル追加
----- ここまでまとめる -------
tagで1.0って付ける

578 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 10:43:29.77 ID:lUVfOohh.net]
バージョン毎にまとめろとか誰も言ってないだろ
具体的にそのやりとは何スレ目だよ



579 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 10:47:48.34 ID:w41Ky1ux.net]
>>573
「まとめろ」「まとめるな」で意見を統一するのは難しいと思うけど(そもそも状況によってどっちが良いかかわるだろうから)、
どういうときはまとめたほうがよい
どういうときはまとめないほうがよい
というガイドラインのようなものならある程度意見はまとまってきそうだね

580 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 13:46:30.21 ID:7Y8AXPNC.net]
後から分離したくならないものはまとめる
要するに、二つのコミットがあった時に、これが二つに分かれてる必要はあるだろうか?と考えればいい

581 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 13:49:14.71 ID:5FZxl5co.net]
そうして全てのコミットはひとつになった

582 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 16:11:36.89 ID:a/IZmogk.net]
コミットを入れ替えるときにコンフリクトって起きないんですか?
git init
touch README.md
git add README.md
git commit -m "Initial commit"
echo 1 > a.txt
git add a.txt
git commit -m "add a.txt"
echo b1 > b.txt
git add b.txt
git commit -m "add b.txt"
echo a1 > a.txt
git add a.txt
git commit -m "modified a.txt"
git rebase -i HEAD^^^
以下のように並べ替え
pick 06da9a6 add a
pick 2c80b8f modified a
pick 7a6a277 add b
git checkout HEAD^
lsするとbファイルがありません
"modified a"のコミットにはbはないことになるんですか?gitが自動的に面倒見てくれてるんですか?

583 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 20:10:10.65 ID:lUVfOohh.net]
Gitでは各コミットがその時点での全ファイルの状態を持ってるけど、
rebaseで並び替えるのはコミットの変更差分(自分の前のコミットとの差分)ってことかな

>>578のrebaseによって、"modified a"コミットのa.txtを変更したという差分だけが"add b.txt"コミットより前の歴史へ移動するので、
"modified a"コミットにbは存在しなくなる

rebase -iでコンフリクトは起こる
例えば>>578の"add a"と"modified a"コミットの順番を逆にしたりすれば

584 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 20:23:21.52 ID:69dFu2L0.net]
>>573
正直「そこの管理者の意見に従ってまとめろ」「同僚たちと同じようにまとめろ」って回答しかないな

585 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 20:46:29.00 ID:b+4KVUcq.net]
少なくともどの時点でもコンパイル通るようにコミットまとめる
大きくても機能ごとにはコミット分ける
でその間はプロジェクトごとに方針あれば何でも

586 名前:デフォルトの名無しさん mailto:sage [2015/06/06(土) 22:34:59.14 ID:4eOWDqlW.net]
問題は俺自身に経験がないのに
俺がルールを決めなきゃいけない時だな

587 名前:デフォルトの名無しさん mailto:sage [2015/06/06(土) 22:35:56.50 ID:yk/a ]
[ここ壊れてます]

588 名前:5xMg.net mailto: >>573
お前、マージ使ってないだろ?

まず前提として「一つのプロジェクトを複数の人が平行で開発している」という
個人プロジェクト以外のごく普通のプロジェクトの話なんだよ。

よくある間違いが、小さい規模の例だけで考えて、
それがそのまま大きな開発にも適用できちゃうって考えること。
君はその間違いはまってる。

(俺が知ってる)小さい規模ではこれでうまくいくんだ。ではなくて
大きな規模になった時それでうまくいくのか?を考えた方がいい。

適切なやり方というのは、規模によって変わるんだから。
[]
[ここ壊れてます]



589 名前:デフォルトの名無しさん mailto:sage [2015/06/06(土) 22:41:32.51 ID:yk/a5xMg.net]
>>581
問題は1コミットを後から見直すかどうかだよな。

後から見なおさないのであれば、どんなに意味不明な修正でも
同じ所を試行錯誤したコミットでも、何百行あるコミットでも
何十個もあるコミットでも、そのコミットを見ないのであればどうでもいい

でもあとからそのコミットを見るのであれば
修正内容が明確にわかるコミットが必要最低限あった方がいい。

あとからそのコミットを見るかどうかだよ。
もちろん俺はよく見る。
仕事でもその修正が適切であるかを見たり、
オープンソースとかでもある修正内容を見たり
だからコミットは分かりやすくなっていたほうがいいと考える。

590 名前:デフォルトの名無しさん mailto:sage [2015/06/06(土) 22:46:03.75 ID:yk/a5xMg.net]
>>575
> というガイドラインのようなものならある程度意見はまとまってきそうだね

コミットをまとめる or まとめないのが目的じゃないからね。
コミットを綺麗にするのが目的。

当然の話だけどガイドラインには理由が必要だろうね。
まとめる理由が。(もしまとめないのであれば、まとめない理由も)

コミットをまとめたりまとめなかったりして、綺麗にする理由は
簡単にいえば、後からコミットを見た時にわかりやすいように
するためなんだが、もっと細かい理由って必要だろうか?

591 名前:デフォルトの名無しさん mailto:sage [2015/06/06(土) 22:54:18.21 ID:yk/a5xMg.net]
少しだけガイドライン考えてみた


・一つのコミットで複数の修正を行わない
理由 後からそのコミットを見た時何を修正したのかがわからなくなるから

・一つの修正を複数のコミットにわけない(分かれていればまとめる)
理由 後からそのコミットを見た時何を修正したのかがわからなくなるから
例外 リリースしてしまったコミットはまとめることは出来ない。


いま気づいたが、この「リリース」っていう概念が重要だな。
どの時点でリリースになるのかはそれぞれだろうが
master、もしくは共有ブランチににマージされた時点がリリースだと考える。


と考えると、やはり>>573の例ははマージ機能を使ってない時点で
一人で開発している場合にのみ通じる例だから、例としてふさわしくないんだよ。

592 名前:デフォルトの名無しさん mailto:sage [2015/06/06(土) 23:00:59.08 ID:OBriYrAJ.net]
3行で

593 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 00:12:36.70 ID:5CuOmznL.net]
あとから見てわかるようにコミットを綺麗にしておけ
まとめる とか まとめない とかどちらか一方じゃない
どちらもやって、綺麗にしておけ。

594 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 02:04:34.40 ID:VSY66R2E.net]
一つのコミットに入れる一つor複数の修正って、何単位で一つと呼ぶのかって話もあるし、

>>545>>549のやりとりにあるように、「共有ブランチにpushしたコミットすら編集してよい」
って運用ルールでgitを使っている人がいたりするので、抽象的なガイドラインは決めるだけ
無駄ではないか

それを議論したって、自分がブチ上げたガイドラインを弁護し、他人がブチ上げたガイド
ラインの言葉尻を捕まえてロンパするだけの、言葉遊びの世界に入っていってしまう

595 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 02:08:39.07 ID:VSY66R2E.net]
>>582
そういう時は、「なんでgitなんか使わなきゃならないのか」に立ち戻るべきだと思う

596 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 02:48:23.33 ID:5CuOmznL.net]
>>589
> >>545>>549のやりとりにあるように、「共有ブランチにpushしたコミットすら編集してよい」

いないだろw

あぁ、なんで共有ブランチにpushしたコミットは
編集したらだめなのかを書いていなかったね。

物事は単純で、他人の役に立つことをしましょう、
他人の迷惑になることはうやめましょう。これだけだよ。

コミットは他人が見ることを考えれば、そして他人は何故見るのかを考えれば
コミットを綺麗にしておけば可読性が高くなって読む人の負担が減る。
これは他人の役に立つこと。

そして共有ブランチを修正したらだめというのは、他の人も
その共有ブランチから派生して修正しているので、その派生元が変わると
今まで参照していたものが履歴を残さずに変わるわけで何が起こったのかわからなくなるから。
これは他人の迷惑になること。

このように俺のガイドラインにはちゃんと理由がある。
反対のガイドラインを作りたいなら、その理由をいうことだけ。
でないと俺の意見に対抗できない

597 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 02:52:10.94 ID:5CuOmznL.net]
念の為に俺が言ってる「共有ブランチ」の定義を書いておくわ。

俺が言ってる共有ブランチっていうのは、
他の人がそのブランチから作業をする、
または他の人がそのブランチにマージすると
という目的で作られたブランチのこと。

つまり他の人が参照しているだけならば
共有ブランチとは言わない。
参照しているだけならば、そのブランチが変わっても
他の人の作業のじゃまにはならないからね

598 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 02:54:19.37 ID:5CuOmznL.net]
ということで、何故そうするのか、どんなメリットがあるのかを
しっかりと書いたガイドラインを、俺以外に出すのまってま〜すw



599 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 10:11:47.35 ID:V49LqTdE.net]
>>591
>いないだろw

いや、>>545が「共有ブランチ上のコミットを書き換えるんだとしたら」と言ったのに対して
>>549が「そうだよ」と返しているので、いること自体は確かなようだ

545に対して、あなたがどうロンパするかは別に知らないが

600 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 10:31:51.05 ID:V49LqTdE.net]
>>583-584
全部のコミットをひとつにまとめて周りから怒られなかったなら、
それは正しいまとめ方だったと思うんだけどね

601 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 12:19:13.74 ID:5CuOmznL.net]
>>594

> 545に対して、あなたがどうロンパするかは別に知らないが

論破? 何故そうするかの理由がないのだから、
まずその理由を言うのが先だろうw

602 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 12:20:45.23 ID:5CuOmznL.net]
>>595
> 全部のコミットをひとつにまとめて周りから怒られなかったなら、

周りの人間がコードを見るということを知らないだけかもしれない。
スキルが低くてソースコード管理ツールすら知らない人もいるのだから。

だからそれは全く参考にならないな。


理由だよ理由。

俺は何故そうするかの理由を書いた。
この俺を論破する理由をかける奴はいないのか?w

603 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 12:21:31.63 ID:yxti539q.net]
誰か運用スレ立ててくれない

604 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 12:52:14.95 ID:V49LqTdE.net]
結局は>>589の言ったとおりになるという、悲しい現実

>>598
運用スレを建てても、荒らしがそこに移動するかどうかは別問題だと思う

605 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 13:04:07.08 ID:yxti539q.net]
運用スレ行けと言えるようになるだけ幾分マシかと

606 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 13:08:53.36 ID:V49LqTdE.net]
>>600
なるほどそうかもしれないね
そういう意味だと、既存だとここあたりが適切なのかな

バージョン管理システムについて語るスレ10
peace.2ch.net/test/read.cgi/tech/1393147031/

607 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 13:12:32.75 ID:5CuOmznL.net]
>>599
> 結局は>>589の言ったとおりになるという、悲しい現実

大丈夫。

俺が言った「ガイドラインを言う時は理由も明確書くこと」
のおかげで、今のところガイドラインは俺が言った一つしかでてない。

608 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 13:17:04.64 ID:yxti539q.net]
>>601
ここでされてるの横断的でない個別的な内容だからスレチ



609 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 13:18:47.22 ID:V49LqTdE.net]
>>603
そっか、じゃあ新スレがいるか・・・

610 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 13:23:17.32 ID:V49LqTdE.net]
>>602
>今のところガイドラインは俺が言った一つしかでてない。

そりゃ出ないでしょ
誰も関わりたくないんだから

611 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 13:26:15.60 ID:5CuOmznL.net]
>>604
スレ立てておいたよ。

Gitをより良くするための運用ガイドライン作成スレ [転載禁止](c)2ch.net
peace.2ch.net/test/read.cgi/tech/1433650988/


>>605
> 誰も関わりたくないんだから
関わりたくないのが理由っていうのはおかしな話だな(笑)

言い返せない時に汎用的に使えそうな言い訳だ。

612 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 13:31:19.54 ID:V49LqTdE.net]
>>606
ありがとう
じゃあここから先は、ここで運用系の話をするのはスレ違いってことで、
あとはそっちでやってもらおう

613 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 13:42:31.68 ID:yxti539q.net]
>>606
タイトルを単にGit運用スレにできないあたり自己顕示欲あふれるスレタイですね

614 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 15:41:57.12 ID:D5MO+jlJ.net]
立てたら立てたで文句言う奴 w

615 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 16:06:00.04 ID:D+Qsqenv6]
はじめまして。 質問させてください。

とあるリポジトリに以下のようなブランチがあります。
・master 特に進んでない
・masterから作成したブランチA 最初のほうだけ開発
・ブランチAから作成したブランチB あらかた開発
・ブランチBから作成したブランチC テストコード開発

masterとAは他人が作ったもので、
私はそれを引き継ぐ形でBで開発していました。
そこからCでテストコードを作ることになり、
一応終わったのでBにプルリクを出したところ少しのやり取りののちマージされました。
そのあとで不具合に気がついたのでまたコミットをしたいのですが、
この時`git checkout`でBに移動してから行うべきでしょうか?
それともそのまま行ってもよいのでしょうか?

CがマージされたBに続く形にしたいのですが、
Bで`git status`すると"Aより104コミット進んでいるから`git push`使って公開して"というような英文があり、
同様にCで行うと"Bより16コミット進んでいるから`git push`使って公開して"というような英文があるので、
言われたとおりにpushしたらコミットはどうなるのでしょう?
Cを作るときにpush漏れはないですし、Cがマージされた時も同様にないのですが。

616 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 18:26:22.23 ID:5CuOmznL.net]
いるいるw

617 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 18:53:47.38 ID:V49LqTdE.net]
>>608
荒らしが自分で建てたスレなんだから、そうなるのはしょうがない
運用の話はそっちでやってもらいましょう

618 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 19:53:48.87 ID:yxti539q.net]
自分で立てたスレなんだからもちろん自分は引っ越して誘導もするんですよね
期待してますよ



619 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 20:06:44.60 ID:5CuOmznL.net]
>>613
はい当然です。 Gitの運用方法に関するレスは全部向こうに移動します。
みなさんも協力してくださいね。

逆に運用以外の雑多な内容はこっちに移動しますよ。

620 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 21:10:56.78 ID:V49LqTdE.net]
>>613
おみごと

621 名前:連続書込しすぎなのでID変えます mailto:sage [2015/06/07(日) 21:22:11.43 ID:rs3gN1uE.net]
このスレから運用に関することをなくしたら
どれだけのレスが残るか期待ですw

ぜーんぶかっさらっていきますよーw

622 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 21:49:02.86 ID:HSoSL4U1.net]
git とうまく組み合わせられるような
バグトラッキングツールでおすすめのはある?
mantisってもう人気無い?

623 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 21:52:12.28 ID:V49LqTdE.net]
これでツールの質問ができるようになるのか、
または、ツールの質問に答えられる人なんて初めからいなかったのかがハッキリするな

どっちにしても平和になってよかった

624 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 21:57:36.23 ID:/P0faz6I.net]
Egitで、amendじゃなくてもっと過去のコミットを編集するには
画面上でどういう操作をすればいいんでしょうか?

625 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 22:03:03.72 ID:rs3gN1uE.net]
githubの使い方を教えて下さい。

626 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 22:13:31.59 ID:rs3gN1uE.net]
>>619
よめ

◆関連サイト
Pro Git - Table of Contents
git-scm.com/book/ja

627 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 22:14:24.04 ID:rs3gN1uE.net]
WindowsでGUIでgitを使いたいです。
なんか良いツール無いですか?

628 名前:616 mailto:sage [2015/06/07(日) 22:16:23.46 ID:rs3gN1uE.net]
>>619
すまんすまん。EGitっていう名前のツールがあるのか。
ならこのスレだ。



629 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 22:16:39.42 ID:UKZkpptu.net]
>>619
そんなのIDEの機能に頼るより、そのコミットを修正するコミットを作った後に
コマンドラインからrebase -iで順番入れ替えてsquashしたほうが簡単じゃないか?

630 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 22:17:04.27 ID:/P0faz6I.net]
>>621
目次にどこにもEgitの話が出てないんですけど、どこに載ってるんですか?

631 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 22:18:17.74 ID:/P0faz6I.net]
>>624
Eclipse上で開発してるので、自分はEgitの方が楽です

632 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 22:41:10.16 ID:UKZkpptu.net]
>>626
おれが使ってるのはIntelliJ IDEAだけど、Git関連は全部GUIでやるよりコマンドラインも併用したほうがいろいろ楽
ちなみにIntelliJ IDEAではrebase -iもGUIで出来るんで試しにやってみたけど、
思ったほどじゃないけどちょっと面倒

EGitもEGit rebaseでぐぐれば手順説明がいろいろ見つかるな
一応できるみたいだよ
Rebase Interactiveとかあるらしい

633 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 22:44:07.71 ID:/P0faz6I.net]
>>627
で、そのやり方を知りたいわけです

634 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 22:44:51.36 ID:rs3gN1uE.net]
>>626
いやいや違う。Egitの方が楽というのは言い訳だ。
楽というのは事実だろう。だがそれはCLIで
gitを使えないことの理由にはなっていない。

はっきり言おう。君はCLIでgitを使えないだけだ。
それはEgitが楽という事実とは無関係だ。

CLIでgitを使えるようになったほうがいいよ。
そうすればEgit+CLIのコマンドで検索すれば簡単に見つかる。

>>623で訂正したが、やっぱり君が読むべきものはPro Gitだ。
GUIツールの機能はCLIを使える知識がなければ理解できないだろう。
いくつか使ってみたが、どれもいきなりCLIのコマンド相当のものがメニューにあるから
初めて使う人は「この機能なにをするものなんだ?」ってなるだろう。

で、CLIのコマンドを知らない人でも簡単に理解できるGUIツール無い?
プログラマーではないウェブデザイナー(HTMLとかCSSを書く人)にも
使ってほしいと考えてるんだけど。

635 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 22:46:34.98 ID:UKZkpptu.net]
>>628
だからEclipseで普通にコミットを作ってRebase Interactiveしろよ
amendは知ってるんだから普通にコミットを作るのはできるんだろ?

636 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 22:49:18.28 ID:/P0faz6I.net]
>>630
コミットは作れるんですが、Egit上での対話的リベースの使い方が分からないんですよね・・・

637 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 22:51:21.60 ID:UKZkpptu.net]
>>631
ヒストリーのコミットで右クリックすりゃRebase interactiveがあるらしいぞ

638 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 22:52:20.19 ID:/P0faz6I.net]
>>632
そこまでは分かるんですが、そのあとの操作の仕方が・・・



639 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 23:03:17.96 ID:rs3gN1uE.net]
たいていのツールはGUIはCLIの使い方を知らなくても使えるものなんだが、
バージョン管理ツールをGUIにしても使いにくいのは
ソースコードを管理するということの意味がわからないからだろうな。

例えばペイントソフトは、そのツールを使う前から
絵を書いたことがある。それと同じことをツールを使ってやるだけ

でもソースコードを管理ツールは、そのツールを使う前にそのツールと同じことをやっていない。
ソースコードを修正している人であっても、ソースコードを管理していない。
(※バックアップはソースコードの管理じゃない)

だからそれをGUIにしたところで、何をするのかわけがわからない機能ばかりで
使い方がわからない。(もしくはバックアップという間違った用途に使うだけ)

ふぅ。そういうことを知らないし、知る必要が少ないウェブデザイナーに
どうやって使いやすい環境を提示できるだろうか。

640 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 23:03:38.86 ID:UKZkpptu.net]
>>633
その様子だと直前じゃないコミットを修正するって行為がどういう意味を持つか理解できてないだろ?
Gitに慣れるまではおとなしく新しいコミットで修正しとけ

641 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 23:07:11.82 ID:/P0faz6I.net]
>>635
そうじゃなくて、それをしたくないから、Egitでのやり方を知りたいわけです

642 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 23:10:20.71 ID:UKZkpptu.net]
>>636
EGit使おうがコマンドラインでやろうが、途中のコミットを修正するってことは単純な行為じゃないんだよ
コンフリクトが発生する可能性があるの理解してる?

643 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 23:15:59.04 ID:rs3gN1uE.net]
>>636
当たり前のことを言うけどさ、プログラマっていうのは技術者だよ?
技術者と何故呼ばれるかというと、それは技術がなければできないことが
できるから技術者なんだよ。

今君が言っていることは「技術者になりたくない」って言っているのと
同じことだってわかってる? 楽とか大変とかじゃない。
技術をつけること事拒否することは、技術者になりたくないと言ってるのと同じ。

CLIでgitの使い方を学ぶのが技術をつけるのに一番の近道なんだよ。
別にGUIが楽なら普段はGUIを使っていい。でも技術自体はちゃんとつけておけ。

644 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 23:16:28.99 ID:/P0faz6I.net]
個人的には、分からないなら「分からない」で全然かまいません
できるなら、ここ以外でツールの話を分かりそうな人がいる場所を教えてくれるとうれしいですが

645 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 23:17:36.07 ID:rs3gN1uE.net]
>>639
なんならまたスレ立てようか?

「git関連のGUIツールの使い方を教えて下さい」っていうスレ

646 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 23:18:36.91 ID:/P0faz6I.net]
もちろん、2chである必要は全然ないです
(・・・っていうか、むしろこの状況ならそっちの方が知りたいです)

647 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 23:21:41.41 ID:rs3gN1uE.net]
あ、もう一つgitのGUIツールがなぜCLI使えない人にとって
難しいのかがわかった。

普通CLIが難しい理由は「コマンドを覚えないといけないから」で
その「コマンドを覚える必要がないから」GUIは簡単なんだ。

でもソースコードの管理ツールの場合、コマンドを覚えることよりも
そのコマンドで何が出来るか、何をするかがわからないから難しい。

ボタンひとつでコマンドを呼び出せても、そこから何をすればいいか
わからないんだよね。この人のように。

648 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 23:23:55.02 ID:/P0faz6I.net]
>>640
っていうか、ここがgit関連のツールの使い方を聞ける場所になったんじゃないんですか?
>>617さんのように、CUIじゃない質問をしてる人もいますし、ここでGUIだけ絞る必要もない気がしますが・・・



649 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 23:31:22.51 ID:1F5PzSNl.net]
>>641
最低限英語できるならstackoverflow.com、機械翻訳でも多分他の人が適当に質問自体修正してくれる
ja.stackoverflowでもいいけど回答くる確率は落ちる

650 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 23:34:31.78 ID:rs3gN1uE.net]
>>643
聞くのは構わないが答えるとは限らないw
質問したところで>>617さんのように放置される。

このスレからgitフローのような運用に関する話が
分離しただけで、ここがなにかに変わったわけじゃない。

651 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 23:37:00.95 ID:/P0faz6I.net]
>>642
自分の場合は、GUIが簡単でCLIが難しいからじゃなくて、
Eclipse上でそのまま操作できるのが楽だから、なんですよね

あなたがEgitを知らなくて、自分はEgitのことを知りたいので、
分からないなら「分からない」って言ってくれて全然かまいません

>>644
なるほど、そっちの方が良い人がそろってそうですね
英語にはさほど抵抗ないですし、そっちで質問してみます
ありがとうございました

652 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 23:39:46.62 ID:rs3gN1uE.net]
よし、これでこのスレでツールの話をする奴が消えたw

こんな感じでどんどん減らしていくので、4649!

653 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 23:43:59.53 ID:UKZkpptu.net]
>>646
ほらよ
another.maple4ever.net/archives/2060/
このブログの後半の「コミットを改変する場合」な

654 名前:デフォルトの名無しさん mailto:sage [2015/06/08(月) 08:05:44.37 ID:USedaFhj.net]
なにこの CLI で git 使える俺スゲー君 w

655 名前:デフォルトの名無しさん mailto:sage [2015/06/08(月) 08:53:59.64 ID:Q2pvFPhj.net]
CLIじゃないと、まともに使えないという方が多いんじゃないか。

656 名前:デフォルトの名無しさん mailto:sage [2015/06/08(月) 11:32:29.03 ID:AXPER4TO.net]
GUIで全部やるのは難し過ぎる
併用が無難だよ

657 名前:デフォルトの名無しさん mailto:sage [2015/06/08(月) 11:48:08.05 ID:I6Rw7h/u.net]
gitと親和性の高いBTSでお勧めを教えて

658 名前:デフォルトの名無しさん [2015/06/08(月) 12:15:16.89 ID:obzwvKms.net]
もうgithub for windowsで満足
プルダウンメニューでブランチを替えて、
ファイルを編集したら未コミットのリストがリアルタイムで追随、
マージはブランチのドラッグアンドドロップで一発、
プッシュはsyncボタンで一発。

でもたまによくあるCLIの作業からは逃れられないけど



659 名前:デフォルトの名無しさん mailto:sage [2015/06/08(月) 13:31:33.83 ID:AXPER4TO.net]
ファイル編集、HEADとの差分確認、コミットの流れはIDEやエディタに統合されたのを使う
ブランチのブラウズもGUIのを使う
ここらへんは非CLIでやることのメリットを感じるね

660 名前:10人に1人はカルトか外国人 [2015/06/08(月) 14:46:48.11 ID:KHrLNVN4.net]
●マインドコントロールの手法●

・沢山の人が偏った意見を一貫して支持する
 偏った意見でも、集団の中でその意見が信じられていれば、自分の考え方は間違っているのか、等と思わせる手法

・不利な質問をさせなくしたり、不利な質問には答えない、スルーする
 誰にも質問や反論をさせないことにより、誰もが皆、疑いなど無いんだと信じ込ませる手法

偏った思想や考え方に染まっていたり、常識が通じない人間は、頭が悪いフリをしているカルト工作員の可能性が高い

靖国参拝、皇族、国旗国歌、神社神道を嫌うカルト

10人に一人はカルトか外国人

「ガスライティング」で検索を!

661 名前:デフォルトの名無しさん mailto:sage [2015/06/08(月) 20:44:04.47 ID:BwIK9Ub/.net]
>>652
自分でサーバー立てるか、どっかのサービス利用するかで回答が変わってくるな

662 名前:デフォルトの名無しさん mailto:sage [2015/06/08(月) 20:51:15.26 ID:xf2QCU7p.net]
>>652
ここはgitのスレです。
gitではない話はスレ違いです。

663 名前:デフォルトの名無しさん mailto:sage [2015/06/08(月) 21:50:53.55 ID:I6Rw7h/u.net]
>>656
親玉のサーバをLinuxで自前で立ててあります
今は3人くらいでpushしてる

664 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 00:40:12.96 ID:LoeafuSM.net]
>>658
既にホスティング環境があって、同じサーバーにbts立てられるっていうことならredmineかな。
ただ、redmineは設定に躓くとちょっとめんどい。うまくいけばbts部分はかなり高機能だし、プラグインで色々拡張もできる。

ホスティング環境も移れるなら、gitbucket (https://github.com/takezoe/gitbucket )とか手軽でいいかもしれない。
javaとtomcatが用意できれば始められるし、それでいてgitホスティングとかpullrequest、issue連携とかの機能は揃ってる。

ただ、gitbucketはbtsとしては高機能とは言えないので、凝ったことしようとすると不満が出るかもしれない。

665 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 09:04:20.23 ID:QNGnbMWJ.net]
gitlabの方がいいよ。git連携というかgit統合みたいなものだから
ものすごく使いやすい。設定はほぼ不要。

redmineはBTSとしてはいいが、ソースコードを
快適に修正するための機能がない。

具体的に言えば「プロジェクトをフォークして、個人用の
フォークプロジェクトで行った修正をマージする」といった
極めて重要な機能がない。

あとBTSはもう古いね。今はITS。
BTSだとITSとして使えるようにカスタマイズしないといけないから
初期状態で使いにくい(そして初心者は使いにくいことに気づかないまま
使いにくいものを使い続けてしまうよ)

666 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 21:00:02.32 ID:mCgHqgj4.net]
gitlabは昔に触ったときは導入が色々大変だったから勧めなかったけど、今は結構楽みたいだね。dockerにも対応してるみたいだし。

確かに高機能だし、本格的に始めたいならいいよね、gitlab。

667 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 21:14:19.30 ID:gDccibNx.net]
gitlabか。
いっかいインストールしたけど
使い方がわからなくてあきらめたんだよな
もう一度頑張るか

668 名前:デフォルトの名無しさん mailto:sage [2015/06/10(水) 01:07:42.05 ID:7XQM9Exq.net]
>>661
今は公式リポジトリが出来たよ。
普通にapt-get, yumでインストールも
アップデートもできるようになった。

>>662
BTSはMantisをちょっと触っただけだけど考え方が違う。

BTSだともぐらたたきゲームのようにバグが湧いてきて
それを「通報がありました」「バグを確認しました」
「誰かにアサインしました」「修正しました」「リリースしました」
のように随時状況を報告しながらバグを退治。
他の人がそのステータスを確認するっていうフローが想定されている。

そのフローが準備されているからバグ退治の流れはそれに乗っかればいいが
アプリ開発(新機能追加など)はやりにくい。

gitlabだと(githubもそうだが)逐一状況を伝える事はしない。
ラベル機能とかで出来なくはないが、BTSではないのでバグ退治のフローはない。
代わりにあるのがアプリ開発のためのIssueでバグを含めた課題全般を取り扱う

リリース済みでバグが次から次へと発覚して、それを急いで直さなきゃ。みたいな状況ならBTSの方がいいかもしれないね。
ITSはもう少し安定していて、マイルストーンを決めてそこまでに対応するという感じ。
もちろん急ぐ奴はすぐリリースしても良いけどね。


フローの話になったから、こっちのほうが良かったかw

Gitをより良くするための運用ガイドライン作成スレ [転載禁止](c)2ch.net
peace.2ch.net/test/read.cgi/tech/1433650988/



669 名前:デフォルトの名無しさん mailto:sage [2015/06/10(水) 22:15:34.72 ID:rQ07tGpq.net]
gitBREAK使ってる人、感想聞かせてください!

codebreak.com/ja/

670 名前:デフォルトの名無しさん mailto:sage [2015/06/10(水) 23:21:39.44 ID:19Nfo0Ba.net]
どうやって利益あげてんのか気にはなるな

671 名前:デフォルトの名無しさん mailto:sage [2015/06/10(水) 23:38:29.29 ID:EBTmmvru.net]
codebreakか
日本の法律下にある他人の鯖にソースコードを預けたくないな

672 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 05:00:08.95 ID:QpuB/nCQ.net]
わざわざ劣化コピー使う意味がわからない

673 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 06:29:11.47 ID:6Kqx+wy+.net]
github日本版がツイキャスみたいな出会い系サイトになったら移っても良い

674 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 06:32:27.10 ID:6Kqx+wy+.net]
>>663
>>573 ってだれかとおもった

675 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 06:40:44.25 ID:6Kqx+wy+.net]
>>634
最後の2行について言うと
それはGUIとしての完成度が低いと言う見方もあるな
馬鹿なデザイナーでも使えるようにする必要があるかどうかは知らん

>>638
その通り

676 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 08:05:33.95 ID:bgrkp9n0.net]
>>638
難しい手順を覚えるのは技術のうちに入らない。
それは単にプロトコルに習熟しただけ。
例えばENIACプログラミングを今更やる奴は殆ど居ない。
本質的な結果を出す為の過程を単純化した方法を作り出すのが技術。
テクノロジーの語源からも明らか。

677 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 08:12:02.69 ID:IhjRP6Ev.net]
guiは履歴を俯瞰してみたり、チェリーピックしたいときに便利だと思う。
cliはシェルと組み合わせれば半自動で色々できるから好き。

678 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 19:58:54.95 ID:pGn6KOhY.net]
>>664
> ソースコードや個人情報等の情報およびその投稿に関する禁止事項
> 3.ソースコードに、自己または第三者の連絡先を記載または暗示すること

> その他一般的な禁止事項
> 4.本システムを通じて入手した情報を、複製、販売、出版、その他私的利用の範囲を超えて使用する行為

ライセンス文もまともに書けず仮に公開したとしても使用には強い制限がかかる
誰がこんなバカな規約書いたんだよ



679 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 20:52:13.58 ID:0L5sgKmI.net]
無料で、数人で、非公開のプライベートリポジトリを使う手段は、現時点では存在しませんか?

680 名前:デフォルトの名無しさん [2015/06/11(木) 21:10:32.77 ID:d4+JHvzb.net]
Dropbox

681 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 21:49:51.01 ID:QpuB/nCQ.net]
>>673
島国根性丸出しのジャップ猿が退化させてやんの
死ねよもう

682 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 21:56:58.54 ID:jxx/4OCH.net]
>無料で、数人で、非公開のプライベートリポジトリを使う手段は、現時点では存在しませんか?

gitlabがある

https://about.gitlab.com/gitlab-com/
Unlimited repositories
Unlimited private collaborators
Unlimited disk space*
Completely free, no credit card required

683 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 22:05:30.61 ID:0L5sgKmI.net]
>>677
ありがとうございます!見てみます!

684 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 23:21:46.83 ID:lwbpITef.net]
>>671
> 難しい手順を覚えるのは技術のうちに入らない。

なにドヤ顔で嘘ついてるのさw

手順覚えるだけでも運転技術だし
飛行機の操縦も船の操縦も手術も手順覚えるだけだから
技術じゃねーってことになるな

685 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 23:34:12.67 ID:YENRiAY6.net]
技術じゃないとまでは言わなくても誰がやっても同じ動きになるなら大した話じゃない
飛行機も船も手術も知識があるうえで感覚も必要なもんだから誰でも同じにはならんわな

686 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 23:36:23.68 ID:lwbpITef.net]
> 技術じゃないとまでは言わなくても誰がやっても同じ動きになるなら大した話じゃない

は? ハンドルを右に切れば
右に曲がりますが?

687 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 23:37:09.16 ID:MEVqNqhj.net]
あいつには運転技術があるって聞いて運転の手順覚えてるだけかよって思う奴は少ないわな

688 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 23:37:32.79 ID:lwbpITef.net]
>>680
gitも知識があるうえで感覚も必要なもんだから誰でも同じにはならんわなw

コミットの内容も、コミットの順番も人それぞれ違ったものになる。



689 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 23:38:20.68 ID:lwbpITef.net]
>>682
ワロタw うまいね

あいつにはgit技術があるって聞いてgitの手順覚えてるだけかよって思う奴は少ないわな


なるほど、gitの手順だけ知っていて
それを技術があるって思い込んでる奴だったのか!

690 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 23:40:40.14 ID:VCTHLF0P.net]
gitを使うっていうのは、gitのコマンドを覚えるだけじゃないからね。

どいういう風にブランチとコミットを
組み立てていくか、それがgitを使うということ。

その技術次第で、過去の修正の内容が分かりやすくなったり
ごちゃごちゃで意味不明になったりする。

きれいなコミットだとrevertしたり、cherry-pickも簡単なんだが、
だめなやつがやると使えないコミットだらけになるもんな。

691 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 23:41:01.81 ID:OzhCdhwc.net]
GitHubで公開されているものを利用してシステムを作ろうとしています。
ですが社内のプログラマが同じバージョンのものを使うようにしたいため
Gitのサーバを構築して、GitHubのを社内にコピーしてプログラマは
社内のGitサーバから落してもらうようにしたいのですが、このような
使い方はできるのでしょうか?
用語が分からないので上手く説明できませんが、もしできる場合は具体的に
どのようにすればばよいのでしょうか。

692 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 23:42:44.09 ID:VCTHLF0P.net]
>>686
githubで公開されているものを使うってだけなら、
submoduleを使えばいいだけ。

特定のバージョン(コミット)を指定して参照することができる

693 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 23:42:53.47 ID:bgrkp9n0.net]
>>679
先人が作り上げた技術に「習熟」する事と、改善等を加える事との区別ぐらい付けよう。

694 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 23:45:06.84 ID:VCTHLF0P.net]
>>688
飛行機だってマニュアルがあって
先人が作り上げた技術を
「習熟」するだけですが?

なにか言う前に矛盾しないか
少し考えてから発言しようよw

695 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 23:51:54.22 ID:bgrkp9n0.net]
>>689
「習熟しただけ」のパイロットもどきが事故起こすんだよなあ。
まあ、プログラム言語の文法覚えた「だけ」の奴には難しかったか。

696 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 23:54:53.44 ID:VCTHLF0P.net]
>>690
> 「習熟しただけ」のパイロットもどきが事故起こすんだよなあ。

だからなんなんでしょうか?w

「習熟しただけ」のパイロットもどきが事故起こすが
「習熟した」以上の技術をつけたのパイロットは事故を起こさない

「習熟しただけ」のgitつかいもどきが、くそきたないコミットを作るが
「習熟した」以上の技術をつけたのgitつかいはきれいなコミットを作る。

あれあれ? 同じことですねw

697 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 04:30:47.16 ID:XoMzVDAf.net]
定石をおぼえる時は
定石から外れたことをするとどうなるかまで知ってる人と
定石通りのことしか出来なくて定石から外されると負ける(前者なら普通勝てる)タイプの人が居るね

698 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 05:33:48.07 ID:KE10iP2h.net]
汚いか綺麗かを決めるのは自分だ。



699 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 07:55:39.88 ID:DpgRw3ep.net]
>>691
見苦しいから、その辺にしとけ。

>飛行機だってマニュアルがあって
>先人が作り上げた技術を
>「習熟」するだけですが?

こういう甘い発想の奴は困るんだよなあ・・・

700 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 08:28:50.68 ID:K1SJqQ2p.net]
>>689
git 使うような人はそのマニュアルを作るような立場の人が多いんだが

701 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 08:41:22.54 ID:UHhWvxxE.net]
>>695
わかる

このスレ「管理者の方針に従えばいい」

俺「俺がその管理者なんだよ〜。どうやってルール決めればいいかわかんねーよ」

702 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 09:11:20.96 ID:uZJNyCxR.net]
やはりそうか
hissi.org/read.php/tech/20150611/VkNUSExGMFA.html
hissi.org/read.php/tech/20150611/SUdTbEt3Wnk.html
hissi.org/read.php/tech/20150612/MGtLbjJuSjU.html
hissi.org/read.php/tech/20150612/dzVHdW5NWTY.html

703 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 19:21:58.70 ID:w9SfTIdr.net]
外部の刻々と変わる環境に対して、
適切な対応を選択し、実行する
これは操作方法だけじゃ無理だよ

704 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 19:48:06.43 ID:OQHJwW6B.net]
Git初心者で、使い方が分からない部分が多くあります。答えていただけると嬉しいです。

GitにアップロードするためのツールとしてTortoiseGitを使っているのですが、
最初にアップロードする(プッシュする)のはいいとして、
ローカルの中身を更新した際、プッシュしてもオンライン上で全く同じ状態にはならず困っています。
具体的には、オンライン上で「ファイルA・ファイルB」、ローカル上で「ファイルA・ファイルC」とあった場合、
プッシュするとオンライン上で「ファイルA・ファイルB・ファイルC」となって、ファイルBが削除されないのです。
いちいちブラウザ上で手動で削除するのが面倒なのですが、何か上手い方法はあるのでしょうか。

また、各種Gitツールを使わず、ブラウザからレポジトリに直接ファイルをアップロードすることはできるのでしょうか?

705 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 20:10:35.67 ID:AMVc4lNO.net]
>>699
> ファイルBが削除されないのです
TortoiseGit のメニューから削除してないんじゃない?

> ブラウザからレポジトリに直接ファイルをアップロード
サービスの提供者に聞いてどうぞ

706 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 01:44:19.98 ID:2XvJk2DZ.net]
>>694
えとさぁ、見苦しいよ。

人のコメントを引用して、
そのことについて、何が間違ってるかを
何一つ書かないで、言い返した気になるのは。

707 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 01:47:39.52 ID:2XvJk2DZ.net]
>>696
> 俺「俺がその管理者なんだよ〜。どうやってルール決めればいいかわかんねーよ」

社内に詳しい人がいないなら、社外の知識を利用すればいいのでは?

最近はオープンソースでgitでどういうコミットをしているのか
見ればすぐにわかるし、資料も多いし、2ちゃんねるでもこっちのスレで詳しくやってるよ。

Gitをより良くするための運用ガイドライン作成スレ [転載禁止](c)2ch.net
peace.2ch.net/test/read.cgi/tech/1433650988/

708 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 01:50:44.54 ID:2XvJk2DZ.net]
>>698
> 外部の刻々と変わる環境に対して、

それはわかる。単にコマンドを覚えるだけじゃなく
gitの外部の環境=ソースコードに応じて
適切な順番と内容で対応を変更して実行する。
これはコマンドを覚えるだけじゃ出来ないからね。

それは他の人のコードのブランチをレビューしていて
痛いほどよくわかってる。コマンドを使うことは出来る
だけどあるべき姿のものを作れない。



709 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 00:59:50.94 ID:PH3D3/9J.net]
浜野さんのミドルネームの C って、何の略かな?

710 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 11:20:49.71 ID:ZM3mWJtN.net]
濱野・チャーリー・純。 それが彼のフルネームよ!

711 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 11:37:12.53 ID:HDA/Cn6G.net]
ごめんくさい〜

712 名前:デフォルトの名無しさん mailto:sage [2015/06/16(火) 00:13:48.85 ID:7C1PfN58.net]
>>687
ありがとうございます。
submoduleでいけました。

713 名前:デフォルトの名無しさん mailto:sage [2015/06/16(火) 01:55:47.83 ID:LRuQsu+J.net]
>>705
>>706
懐かしい。
チャーリー浜かよw

714 名前:デフォルトの名無しさん mailto:sage [2015/06/16(火) 13:15:18.31 ID:AmmNKqz/.net]
https://github.com/python/cpython/commit/efe0e11c78f890146375f1d4cbed4b513cdffa3c

これどういうことですか?
同じ文字列が削除されて追加されているコミットってどうやって作るんですか?これ何の意味があるんですか?

715 名前:デフォルトの名無しさん mailto:sage [2015/06/16(火) 13:16:28.66 ID:TZUCxsD3.net]
foxがFoxになっとるやんけ

716 名前:デフォルトの名無しさん mailto:sage [2015/06/16(火) 13:28:36.36 ID:dzgBqGJj.net]
改行コードが変更されただけとか
行末のスペース無くなってるだけとか
TABがスペースに置き換わっただけとか
たまによくある

717 名前:デフォルトの名無しさん [2015/06/16(火) 21:45:33.41 ID:gqnH2dL3.net]
sourcetreeで、stashをpopする方法はある?

718 名前:704 mailto:sage [2015/06/17(水) 00:09:44.91 ID:zdNvSItr.net]
言われて気づきました大文字が小文字になってるだけだったのに今気づきました



719 名前:デフォルトの名無しさん mailto:sage [2015/06/17(水) 19:22:19.83 ID:Uu1OTzaj.net]
Git 2.4.4
https://github.com/git/git/releases/tag/v2.4.4

720 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 00:27:48.54 ID:7B4eGBDb.net]
うまく説明できないんですが、GitHubとは別サイトで認証が必要なライブラリで
そのサイトでGitHubのアカウントを登録してGitHubから引っ張ってくるんですが、
登録さえしてしまえば普通にcloneで取ってこれます。
それをsubmoduleで使いたいんですがローカルリポジトリに追加してコミット、
自分のサーバのリポジトリにプッシュしても、他の人が使えません。
自分自身も一度ローカルを消して、自分のサーバからクローンしようとしても
エラーになってしまいます。
このような場合はどうすればよいでしょうか?

721 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 00:33:40.72 ID:vn28fqVf.net]
>>715
まずこの意味がわからない
>GitHubのアカウントを登録してGitHubから引っ張ってくる
具体的に何やってるの?

722 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 01:25:52.57 ID:X9wRJKf5.net]
>>715
submoduleのリポジトリも含めて皆がcloneできる場所において、
submoduleの参照先を変えないとだめかもしれない。

723 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 19:53:58.42 ID:lbH07egD.net]
>>716
.gitmodulesの示す先がローカルのパスか、その別サイトにログインできないとcloneできないとか
そんなんじゃね?

724 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 20:20:22.80 ID:lbH07egD.net]
ああ、>>716の疑問はそこじゃないな・・
githubを監視するようなサイトが幾つかあるけど、そんな中にミラーを提供する奴もあったかもしれない
(うろ覚えでオセロか何かそんな名前のサイトがあった気がするけど今見たら消えてるな・・・)
そういうのを使ってるんだろう

と、エスパーしてみた

725 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 16:52:03.91 ID:YPeQCGDm.net]
pushしたコミットログをタイポしたのでrebaseで直した後に
別の最新の更新内容をpushしようとしたら
pullしろっていわれたのでpullしたらコンフリクトしました
こういうときってどうやってコンフリクト起こさずにログを修正したらよかったんですか?

726 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 17:00:11.07 ID:RKAD3ekV.net]
>>720
あんたのレベルだとpush済みのタイポをrebaseで直してpushしようとしたらダメだ
多少歴史が汚くなるとしてもタイポも新しいコミットとしてpushすべき

727 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 18:17:52.76 ID:0NmNrFCo.net]
>>716
>>717
>>718
>>719
どうもすいません。ちょっとてんぱり気味でした。
>>718のおっしゃる通りです。
ただユーザー名とパスワードを書くのは引けるので調べたところ
GitGubでトークンというのを作って.gitmodulesに書き込む事で
うまくいきました。

728 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 18:55:06.03 ID:/gMpDjZs.net]
pushしてからrebaseはコンフリクトする罠



729 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 02:49:01.15 ID:j9mWyPD+.net]
>>720

>>721は無視していい(笑) おそらく>>721自体がやり方をわかっていない。
>>721自信がが説明できるレベルにないのを「あんたのレベル」という言葉でごまかしてるw

おそらく答えとしては「push時に--forceをつけろ。」だろうけど

以下、ちゃんとした解説

------------------

どれをどこにpullしたのかよくわからんが、まず「みんなで共有しているブランチ」と
「自分専用のブランチ」と分けて考える。

「みんなで共有しているブランチ」の代表例はmasterだな。他に次バージョン用のブランチなどがある
「自分専用のブランチ」はトピックブランチと呼ばれたりする。

自分専用のブランチは、その名の通り自分専用なのだから勝手に更新されることとはない。
みんなで共有しているブランチは誰かが勝手に更新する。

みんなで共有しているブランチは、そのブランチに対して直接修正してはいけない。
必ず共有ブランチから自分専用のブランチを作って作業をする。終わったら共有ブランチにマージする。

自分専用のブランチは自分専用なのだから好きにrebaseしてよい
自分専用でも他の人が見ることはある。だけどそれは見てるだけなので何も問題ない

ここまでは前提知識として


続く

730 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 02:50:06.54 ID:j9mWyPD+.net]
> 別の最新の更新内容をpushしようとしたらpullしろっていわれたので

pullする必要があるのは共有ブランチの場合だけ。なぜなら自分専用であれば
自分しか更新しないから、サーバー側がローカルよりも新しくなることはなく
pullする必要がない。

そして共有ブランチであれば、そこを調節更新することはないのでpullが失敗することはない
失敗したら間違って共有ブランチをローカルで更新してしまったとうこと。
その場合は(他のブランチにリネームしたりしてバックアップを取ってから)
共有ブランチは適当に巻き戻したり消して取り直せばいい



じゃあ何故pushした時にpullしろと言われたのか?

それは単にサーバーにpushされているのと、
自分がpushした内容(の歴史)が食い違っていたからなだけ。

gitはブランチが共有ブランチなのか自分専用のブランチなのかの区別は
できないから無いから食い違いをサーバー側が更新されたからだと解釈した。


でもそれが自分専用のブランチであれば、
ローカルにあるブランチが正しいので単にgit push --forceをすれば良い。
自分専用のブランチなのだから、git push --forceしたとしても
誰にも迷惑はかからない。

731 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 03:00:25.50 ID:j9mWyPD+.net]
補足

理屈上は>>725に書いたとおりで間違いないのだけど、
人間はミスするもので、間違ってローカルでmasterを修正して
それをgit push --forceしてしまうなどということが起こりかねない。

中途半端にしか理解できてない人がmasterにpushできない?
あれぇ〜? --forceしてみよう。とかやってめちゃくちゃにして、
その経験(?)を悪い方向に活かして、○○は禁止
(理由:なんでそうなるのか俺には理解できんから)とか
言い出してgitを使えない・不便な道具に、変えてしまう愚か者が少なからずいる。


だから早いうちにgithubやgitlabを取り入れた方がいい。
gitlab(無料だよ)だと、masterに対してのpush --forceを禁止して
ウェブ画面に限定出来たり(デフォルトでそうなってる)と便利。

「共有のブランチ」と「自分専用のブランチ」を明確に区別するために
プロジェクトのリポジトリから、自分専用のリポジトリへforkを行ってから開発するから
ブランチがたくさん出来て、どれがなんのブランチなのかわからなくなることもない。

732 名前:デフォルトの名無しさん [2015/06/22(月) 04:12:25.25 ID:6fsOI3Rm.net]
そして>>724-726を見た>>720は、なんだかよくわからないけどgit push --forceでいいのかぁ〜と理解し
push --forceの乱発で他人のコミットを上書きしまくってプロジェクトを混乱に陥れるのであった…

733 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 05:17:00.13 ID:mEuvJOmb.net]
>>724-726 の結論

git push --force 推奨

734 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 06:18:54.34 ID:j9mWyPD+.net]
なんか必死なバカが居るw

735 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 08:17:21.67 ID:Jo3Uu3lv.net]
自演乙

736 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 09:57:48.30 ID:PyoyBJGz.net]
>>727
>なんだかよくわからないけどgit push --forceでいいのかぁ〜と理解し
これは別にID:j9mWyPD+悪く無いだろ……

737 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 10:01:38.28 ID:PyoyBJGz.net]
大体、Git使う奴がアホかどうかなんてソフト側から判別できるわけ無いんだから、
どう丁寧に教えようがリスクは当然有ると考えるべき(戻せるだけマシ)
だったら丁寧に教えてあげた方が後から文句言われる筋合いを無くせるという利点も……

738 名前:ID:j9mWyPD+ mailto:sage [2015/06/22(月) 10:09:04.83 ID:6W+IUVUv.net]
俺的には

プロ(俺)の目の前で、アマチュアが初心者に
「お前にはまだわからんだろう



739 名前:ェな〜」と
言い出したように感じたものでw

アマチュアが、pushした物の歴史改ざんしたらいけないんだぜーとか
push --forceはだめなんだぜーとか言ってるのを見るとねぇ(苦笑)

そういう書き込みには、決まってなぜだめなのかといった理由が書いていない。
自分がわかってないからさ。

理由を考えれば、どういう場合にはだめで、どういう場合ならいいかが
わかるはずなんだが、一部の人間は何も考えたくないからか、
状況など考えずに、良いか駄目かのわかりやすいルールを求める。

そういう人間にはならないようにしような。
[]
[ここ壊れてます]

740 名前:デフォルトの名無しさん [2015/06/22(月) 10:16:31.40 ID:nboh/a20.net]
間違って操作しても壊れないようにするのがフェイルセーフ(馬鹿除け)の基本なんだが

741 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 10:30:46.58 ID:6W+IUVUv.net]
世の中に間違って操作しても絶対に壊れないものなんてないぞw

フェールセーフというのは間違って操作しても「安全」という意味だ。
英語:セーフ=安全

お前が言うべきなのは、フールプルーフな。
英語:フール=馬鹿

gitにおけるフールプルーフはreflogだろうな。
これによってコミットが消えることはない。

間違って操作してもgitなら複数の場所にコピーがあるから
これもフールプルーフといえよう。

push --forceしても別に壊れるわけじゃない。混乱が発生して困るだけだ。
もちろんそういう問題が発生するのは、みんなで共有しているブランチだけであって
だから自分専用であれば誰も困らないんだからやっていいという話をしてる。

>>734
お前は何がいいたいのだ?

742 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 10:52:29.70 ID:kJni3XZO.net]
釣られたんじゃね?

743 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 11:00:33.51 ID:Jo3Uu3lv.net]
リポジトリが公開されているからと言って
勝手にforkして作業してたら
主が勝手に(自由に)pushして
forkした側が混乱して困ってこれまた勝手にクレームを付ける

誰宛てのアンカも無いレスに対して >>735 がやってることはまさにそれ

744 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 12:16:35.13 ID:a9m1vXpg.net]
そういう揉め事はこちらへどうぞ
peace.2ch.net/test/read.cgi/tech/1433650988/

745 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 17:40:26.27 ID:PyoyBJGz.net]
ID:6fsOI3Rm=ID:Jo3Uu3lv必死すぎワロスwww

746 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 18:04:38.52 ID:6W+IUVUv.net]
>>737
落ち着こうw

あんたが言っている問題(?)
それはフォークなど関係なく発生することだ。

複数人で開発したら、一人が開発中に
もう一人が修正した。という話をしているだけだな。

747 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 19:50:24.16 ID:ScRlfOQU.net]
いっぱい釣れたね

748 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 20:27:08.06 ID:O6QpuzQl.net]
おまえらpush --forceを甘く見すぎだな

Aがトピックブランチ作成
Aがトピックブランチ上でコミットXを作成してpush
Bがトピックブランチ作成
Bがトピックブランチ上でコミットYを作成してpush、トピックブランチ破棄
Aがトピックブランチ上でタイポ直したコミットX'をrebaseで作成してpush --force

コミットYは上書きされてしまうわけだが、これ誰も気がつかずコミットYがGCされちゃうことあるんだよ?



749 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 22:41:32.22 ID:mEuvJOmb.net]
x されちゃうことがある
o されちゃう

750 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 22:47:27.01 ID:O6QpuzQl.net]
GCされる前に誰か気がつけばreflogから復旧できるんで

751 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 23:36:10.08 ID:a9m1vXpg.net]
>>742
AとBのトピックブランチが同じ名前ならBのpushのときに失敗するだろ。
その場合はトピックブランチを共有してるのだから、push -fしてはいけないのは当たり前

752 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 00:36:04.38 ID:UdZmnE2/.net]
>>742

>>745の言うとおり。共有しているブランチは
push --forceしたらだめだと書いた。ちゃんと判断して使え。

ミスしたらという話をするならば
masterを消すことだって出来てしまう。


だからgitlabを使えと言ってるんだよ。gitはソースコードの管理をするためのもので
ユーザーの管理、つまり誰が何をやっていいかダメかっていうのは管理してない。
--forceが問題なのではなくて、gitだけでやろうとしているのが問題
ユーザーの管理がしたいのならGitサーバーを使う。それはGit Proにも書いている。
https://git-scm.com/book/ja/v1/Git-%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC

俺のおすすめはgitlab。Git Pro 2nd Editionの方に翻訳されてるな。
https://git-scm.com/book/ja/v2/Git%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC-GitLab

フォークして自分のプロジェクトで作業するならば、
メインのプロジェクトには共有ブランチだけ、
自分のプロジェクトには自分専用のブランチだけになる。

共有ブランチはプロテクト等をかけることで、
push --forceできなくすることもできる。

753 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 00:45:05.79 ID:4795aBmW.net]
gcをしても初期設定だと直近二週間のコミットは保存されるし
他の奴の作業コピーから復元できるかもだし

754 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 01:19:15.14 ID:UdZmnE2/.net]
少なくともコードを書いた本人のマシンには
本人が書いたコードは残ってるんだよね。

755 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 16:29:38.65 ID:LQfp6JsA.net]
べらんめぇ
宵越しのコードは持たねぇのが粋ってもんよ

756 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 20:22:25.05 ID:CqiNTuO0.net]
おっ、粋だね!

757 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 20:57:22.50 ID:Yra6/pdr.net]
>>749
てめえ、コミットする前にコード消しやがって、何が粋だよ

758 名前:デフォルトの名無しさん [2015/06/23(火) 22:28:58.60 ID:SktsG5/m.net]
コードもまた別れがあるから愛おしいのよ。
いつでも逢えたらロマンチックじゃないじゃない。



759 名前:デフォルトの名無しさん mailto:sage [2015/06/24(水) 08:57:50.31 ID:NHniIMjV.net]
>>751
江戸っ子は気が短けーんでい

760 名前:デフォルトの名無しさん mailto:sage [2015/06/24(水) 22:23:29.89 ID:ix5XSndE.net]
コードなんてもなぁ、そう何度も何度もね、
テストしたりコミットしたりほどのもんじゃないんだよ。
オレなんか、急ぐときなんざ エディタで保存する前に
消しちまうんだ

761 名前:デフォルトの名無しさん mailto:sage [2015/06/26(金) 11:47:16.43 ID:Q1kb1EVf.net]
3つのファイルを編集した1コミット分をgit pushしたときに
Total 9 (delta 5), reused 0 (delta 0)
って表示されたんですが9と5ってなんですか?

762 名前:デフォルトの名無しさん [2015/06/28(日) 11:33:24.51 ID:5m9gZHLm.net]
基本的には実行属性を無視しつつ、
ある特定のファイルの実行属性だけ無視しない

という設定をしたいんだけど、どうすればいい!?

763 名前:デフォルトの名無しさん mailto:sage [2015/06/28(日) 11:47:33.27 ID:VLu09OAr.net]
>>756
Linux使えば良い。

764 名前:デフォルトの名無しさん [2015/06/28(日) 13:44:26.56 ID:5m9gZHLm.net]
>>757
Linux使ってるんだけど、どうすればいい・・・

765 名前:デフォルトの名無しさん mailto:sage [2015/06/28(日) 14:04:26.07 ID:lxz6gjyn.net]
chmodぐらい勉強しろ。

766 名前:デフォルトの名無しさん [2015/06/28(日) 15:26:50.01 ID:5m9gZHLm.net]
>>759
いちおうわかりやすく説明しなおすと、
chmodをすると、gitは属性の変更を検知するでしょ?
それを本当に実行するファイル以外では無視したいの。

たとえば、 bin というフォルダにあるファイルの
実行属性があやまって変更されたら検知してほしいけど
doc というフォルダのファイルをうっかり属性変更しても
そんなのは無視してほしいんですよ

767 名前:デフォルトの名無しさん mailto:sage [2015/06/28(日) 15:36:00.06 ID:YBvq0FDq.net]
.gitignoreや.gitattributesでどう設定すれば・・・って話だろうけど
確かにもうすこし具体的に何がしたいか書かないとレスつかないだろうね

768 名前:デフォルトの名無しさん mailto:sage [2015/06/28(日) 16:49:31.94 ID:uJqfu/82.net]
sambaからコピってパーミッション直さないのがいると
全部のファイルに実行権ついててうざっ…とはなるな



769 名前:デフォルトの名無しさん mailto:sage [2015/06/28(日) 17:03:24.02 ID:WJabjmO6.net]
>>762
cygwinなら/etc/fstabで/cygdriveをnoaclに設定しとけばその手の煩わしい手間の必要はたぶん無い
msysgitとかだと同じことできなかったりする?

770 名前:デフォルトの名無しさん mailto:sage [2015/06/28(日) 18:27:03.56 ID:uJqfu/82.net]
>>763
Windows->(Samba)->Linuxにコピーして
Linuxでgit addした時の話ね
msysgitなら実行権を無視するのでそういう事にはならないよ

771 名前:デフォルトの名無しさん mailto:sage [2015/06/28(日) 18:39:52.16 ID:lxz6gjyn.net]
だからLinux使えって言ってんだろ?

772 名前:デフォルトの名無しさん mailto:sage [2015/06/28(日) 20:07:20.93 ID:WJabjmO6.net]
>>764
それはsamba側の設定でcreate maskを0644にしちゃえばいいと思うんけど、
そういうわけには行かない使い方をしてるのかな?

773 名前:デフォルトの名無しさん mailto:sage [2015/06/28(日) 20:25:52.15 ID:uJqfu/82.net]
>>766
自分配下のものならそれでいいんだけど、
個人用のLinux PCとか、IT管理部門が許可しなかったりと
なかなか統一できないのよね…。

質問の件は git config core.filemode false で
実行権限無効化するくらいしか思いつかないな
gitattributesでできるんかな?

774 名前:デフォルトの名無しさん [2015/06/28(日) 20:28:07.89 ID:5m9gZHLm.net]
>>767
実行権限無視の設定にしてる。
でもこれだと、ほんとに実行するファイルの実行権限が落ちていた時に
気付かないので、できればやめたい

775 名前:750 mailto:sage [2015/06/28(日) 20:31:54.95 ID:/nFQf9C+.net]
どなたかおねがいします

776 名前:デフォルトの名無しさん mailto:sage [2015/06/28(日) 20:44:04.23 ID:WJabjmO6.net]
>>769
stackoverflow.com/questions/21476167/when-i-do-git-push-what-do-the-statistics-mean-total-delta-etc

777 名前:デフォルトの名無しさん mailto:sage [2015/06/28(日) 22:55:49.53 ID:im5DcXMU.net]
うーん、
プリコミットフィルターでコミットを拒絶するか
ポストコミットフックで実行権を強制的に書き換えるか

やりかた?知らん。

778 名前:デフォルトの名無しさん mailto:sage [2015/06/29(月) 16:18:10.01 ID:rbxhDT3n.net]
git diffが見づらいんですが
背景色を変更したり文字の色を指定する方法をおしえてください



779 名前:デフォルトの名無しさん mailto:sage [2015/06/29(月) 17:14:42.93 ID:k+90EXgh.net]
.git/config

780 名前:デフォルトの名無しさん [2015/06/30(火) 09:22:56.54 ID:TGfi4m1b.net]
コミットした内容を破棄するんじゃなくて
コミットしたことを破棄したいんだけど
どうしたらいいの?
ファイルの内容は戻したくない

781 名前:デフォルトの名無しさん mailto:sage [2015/06/30(火) 09:39:02.37 ID:4wEdMli5.net]
>>774
git reset HEAD^

782 名前:デフォルトの名無しさん [2015/07/04(土) 13:39:17.57 ID:YKtPOMLD.net]
要件とか設計書をmarkdownとかで作成してバージョンを管理するとします。

そして変更履歴を一覧として出力(差分のみ)して作業指示書のようにすることはできますか?

783 名前:デフォルトの名無しさん mailto:sage [2015/07/06(月) 07:01:20.85 ID:p0+3cdhD.net]
git log -p でええか?

784 名前:デフォルトの名無しさん mailto:sage [2015/07/06(月) 11:19:13.00 ID:jgWjPX/O.net]
SourceTree ってわかりにくくない?
編集したのを元に戻すつもりで破棄を選んだら
ファイルを消されたよ

実行したgitコマンドのログも見れないし

785 名前:デフォルトの名無しさん [2015/07/06(月) 12:24:05.59 ID:IqUlle/j.net]
使ってないよ

786 名前:デフォルトの名無しさん mailto:sage [2015/07/07(火) 07:05:33.80 ID:NpIL7uvL.net]
>>776
人間を機械のように扱わないとあかん案件か。

787 名前:デフォルトの名無しさん [2015/07/07(火) 10:56:27.88 ID:L2fl7GI9.net]
>>780
Excelでいつの間にか更新されてて、取り込まれてないよ!っつーのをなくしたいんですわ

788 名前:デフォルトの名無しさん mailto:sage [2015/07/07(火) 23:01:07.32 ID:JwFwNWWF.net]
csvにしてからテキスト比較する程度でも足りそうな



789 名前:デフォルトの名無しさん mailto:sage [2015/07/07(火) 23:25:04.32 ID:y1gFbJO1.net]
いままで要件定義とか設計書をExcelでやってたのをGit管理したmarkdownへ変更したいってことなのか?

790 名前:デフォルトの名無しさん [2015/07/08(水) 01:45:10.53 ID:uot9w4rY.net]
これって他人のコード見れたりするんですか?

791 名前:デフォルトの名無しさん mailto:sage [2015/07/08(水) 02:11:28.13 ID:uBhtmoLk.net]
ほんとExcelの仕様書は根絶してもらいたいな
バックエンドにGitを使ったWikiで何か良いものはないのかな?

792 名前:デフォルトの名無しさん mailto:sage [2015/07/08(水) 04:28:24.61 ID:L2Tv4EJx.net]
>>785
gitlab

793 名前:デフォルトの名無しさん mailto:sage [2015/07/08(水) 19:28:18.03 ID:ribTz8l0.net]
>>785
エクセルをgitで管理すると捗るよ

794 名前:デフォルトの名無しさん mailto:sage [2015/07/08(水) 23:28:04.19 ID:PLuP1x0a.net]
tortoiseGitのdiffでexcelの差分表示機能は秀逸
差分機能のないexcel自身を使ってなぜか差分表示を行ってしまう
wordファイルはword自身の機能を使って差分表示

SourceTreeはWinMargeの呼び出しが標準たな?
tortoiseGitには負けるけどそこそこ使える

コマンドラインではdocx2txtが定番なのかな?これってexcel対応してたっけ?

795 名前:デフォルトの名無しさん mailto:sage [2015/07/10(金) 00:13:15.31 ID:Ud/4MC5K.net]
markdownやplantUML使うならAtomよさげだなあ
これぞ開発者のツールって感じ

796 名前:デフォルトの名無しさん mailto:sage [2015/07/10(金) 03:42:11.87 ID:/JprfCCX.net]
>>787
> エクセルをgitで管理すると捗るよ

前にやってた(知らない所で勝手にやってた)ことあるけど
データ容量増えすぎでいらいらするようになったよw
差分で記録できないからね。
画像とか含まれていると、数MB単位で増え続ける。

797 名前:デフォルトの名無しさん [2015/07/10(金) 04:02:17.76 ID:27W+BsF0.net]
やって後悔するのは愚者
やらんでも予想出来るのが賢者

798 名前:デフォルトの名無しさん mailto:sage [2015/07/10(金) 08:38:00.86 ID:xDEEK620.net]
git って差分で記録なんてしてたっけ



799 名前:デフォルトの名無しさん mailto:sage [2015/07/10(金) 09:26:19.80 ID:JycZhxcB.net]
その人はExcelでgitを作って管理すると捗ると言ってるのだ
それなら通じる

800 名前:デフォルトの名無しさん mailto:sage [2015/07/12(日) 14:24:22.04 ID:PDFfD/6i7]
>>792
コミット時にはしないけど、git gcの時に似ているファイル同士は連結圧縮してくれる

801 名前:デフォルトの名無しさん mailto:sage [2015/07/12(日) 14:24:46.34 ID:9keGjwZf.net]
>>792
コミット時にはしないけど、git gcの時に似ているファイル同士は連結圧縮してくれる

802 名前:デフォルトの名無しさん mailto:sage [2015/07/13(月) 17:46:21.87 ID:t6CAZDWG.net]
SourceTreeをアップデートしたらウィンドウが半分になった
どうしよう

803 名前:デフォルトの名無しさん mailto:sage [2015/07/13(月) 17:49:20.78 ID:t6CAZDWG.net]
ブックマークを表示してサイズ変更して非表示にしたら直った。
不思議なこともあるもんだ。

804 名前:デフォルトの名無しさん [2015/07/14(火) 01:33:04.33 ID:vBESeRtH.net]
案件とかで使ってないけど、趣味でgit勉強してます。
で、どういう運用すればいいのかよくわからん。

まず、バージョン1とかマイルストーンでブランチを切った方がいい?で、そこから機能でブランチを切ってく感じ?

805 名前:デフォルトの名無しさん mailto:sage [2015/07/14(火) 06:39:52.42 ID:lsljdDda.net]
好きにしろ

806 名前:デフォルトの名無しさん mailto:sage [2015/07/14(火) 10:23:57.14 ID:pNaF7lhj.net]
>>798
まずブランチなんか無視して使い方を覚えるんだ

807 名前:デフォルトの名無しさん mailto:sage [2015/07/14(火) 11:24:20.22 ID:OwkWHpBs.net]
>>798
このスレはgitであのコマンドってなに?とか
git周辺のソフトって何が有る?とか
そういうことを聞くスレだよ。
主に初心者向け

gitの運用の仕方はこっち

Gitをより良くするための運用ガイドライン作成スレ [転載禁止](c)2ch.net
peace.2ch.net/test/read.cgi/tech/1433650988/

808 名前:デフォルトの名無しさん [2015/07/14(火) 12:53:22.36 ID:G0PBqp91.net]
>>801
どう見ても初心者だろ



809 名前:デフォルトの名無しさん mailto:sage [2015/07/14(火) 13:07:53.62 ID:VxoBFrok.net]
>>802
運用のことを考え出したら初心者じゃない。
コマンドなんてあとから覚えりゃいいんだよ。

運用があって、それに必要なものを作ったのが
gitなんだから。

810 名前:デフォルトの名無しさん [2015/07/14(火) 13:20:00.15 ID:G0PBqp91.net]
初心者はコマンドを先に覚えた方が良い。
でないと、話が通じない。
ある程度使って、具体的に困ったところが出てきたら、運用スレで聞けば良い。
ただしあっちは関係無い話に脱線しがちだから、良いとこ取りした方が良いよ。

811 名前:デフォルトの名無しさん [2015/07/15(水) 23:09:43.18 ID:a+rEGmf6.net]
すいませんgitでコミットするときにこのファイルは何で更新したのか思い出せません。
なので、これから更新する内容は「○○機能を実装」ってことでそれをプロジェクトルートのテキストファイルにメモ書きしてました。
しかし、コミットするときに毎回メモを見るのを忘れてしまいます。
再帰にコミットログを書いとくとかなんかtodoみたいなコマンドってありませんか?

812 名前:デフォルトの名無しさん [2015/07/15(水) 23:10:19.62 ID:a+rEGmf6.net]
訂正
☓再帰にコミットログ
○先にコミットログ

813 名前:デフォルトの名無しさん mailto:sage [2015/07/15(水) 23:21:39.17 ID:YpeXwOwK.net]
>>805
> それをプロジェクトルートのテキストファイルにメモ書きしてました。
いますぐそのようなアホなことを辞めましょう。

814 名前:デフォルトの名無しさん mailto:sage [2015/07/15(水) 23:22:13.29 ID:VsrdjrWK.net]
前回との差分見ながらコミットログ書けばいい
あらかじめ用意しておくから忘れるんだ

815 名前:デフォルトの名無しさん mailto:sage [2015/07/15(水) 23:44:52.69 ID:DsRhlYqB.net]
自分が今なにをしてきたか忘れるのか、
よっぽどコミットを溜めるのか、
コミットのコメントが適当すぎるのか

もうバージョン管理以前の問題な気が
アナログだけど付箋にメモしてディスプレイに貼れば?

左がこれからやること、上部が今やってる事、右が終わった事、
いや右は要らんかな?

816 名前:デフォルトの名無しさん mailto:sage [2015/07/16(木) 00:52:26.73 ID:Ye9E1FJD.net]
>>805
自分が差分を見て理解できないコードをコミットしちゃダメだよ

817 名前:デフォルトの名無しさん mailto:sage [2015/07/16(木) 02:04:46.85 ID:C5QhjRoF.net]
git notes とかはどうかな?

818 名前:デフォルトの名無しさん [2015/07/16(木) 04:35:55.01 ID:MREKRM2C.net]
>>810
差分ってたまに直観的じゃない出力することが良くある



819 名前:デフォルトの名無しさん [2015/07/16(木) 07:52:03.14 ID:SnFgv9L8.net]
git diffの表示範囲を広げるオプションは?

820 名前:デフォルトの名無しさん [2015/07/16(木) 08:04:35.28 ID:SnFgv9L8.net]
>>805
githubとかRedmineとかticket/issue管理ツールと併用するのが一番だけど、1人で使うのだと構築するのが大変かもね。

メモをgit管理されていれば、メモの差分もgit diffで出るよね。なので、commitする前に必ずgit diffしていればメモを見るのを忘れることはないはず。
このやり方をする/しないにかかわらず、commitする前にgit diffをするのは大事だから習慣付けるべきだよ。

821 名前:デフォルトの名無しさん mailto:sage [2015/07/16(木) 09:31:42.39 ID:NYNU6iM6.net]
変更するたびにコミットしといてpushやmerge前にamendなりrebaseで整形すればよくない?

822 名前:デフォルトの名無しさん [2015/07/16(木) 12:26:35.31 ID:WO54leEH.net]
>変更するたびにコミット

コンパイル出来ないものをコミットするメリットは?

823 名前:デフォルトの名無しさん mailto:sage [2015/07/16(木) 12:32:11.52 ID:DSiPnBiQ.net]
コンバイル云々より下のレイヤーの使い方をしてるだけだろ。
ビルド管理の目的以外でバージョンコントロールしてはいけないという理由はない。

824 名前:デフォルトの名無しさん mailto:sage [2015/07/16(木) 13:02:02.47 ID:Q/SdAAm+.net]
してはいけないのではない。

ソフトウェアのバージョンを管理する以外につかっても
意味が無いということだ。

825 名前:デフォルトの名無しさん mailto:sage [2015/07/16(木) 13:39:11.99 ID:Ye9E1FJD.net]
ぜんぜん使いこなせてないな
そんなんじゃgitを使う意味が無い

826 名前:デフォルトの名無しさん [2015/07/16(木) 14:56:22.79 ID:SnFgv9L8.net]
ここは初心者向けだそうなので、gitの使い方に自信がある人はこちらへどうぞ。

Gitをより良くするための運用ガイドライン作成スレ [転載禁止]©2ch.net
peace.2ch.net/test/read.cgi/tech/1433650988/

827 名前:デフォルトの名無しさん [2015/07/16(木) 15:16:59.28 ID:FDPV8gUS.net]
>>810
ある機能を実装するのに、差分の出し方としての段階があると思うけどそういう単位でやるの?
面倒じゃない?

828 名前:デフォルトの名無しさん mailto:sage [2015/07/16(木) 15:29:22.25 ID:cQ0wrBTO.net]
>>816
何をやってたか忘れない
別途メモ管理不要
revertできる



829 名前:デフォルトの名無しさん mailto:sage [2015/07/16(木) 16:59:52.48 ID:XEPlidkJ.net]
revertは悪

830 名前:デフォルトの名無しさん mailto:sage [2015/07/16(木) 19:11:52.83 ID:BQ1LfMZh.net]
>>805
> 先に再帰にコミットログを書いとく

どうしてもと言うなら

git commit --allow-empty -m "○○する予定"
touch a; git add a;
git commit --amend -m "○○してやったぜ"

831 名前:デフォルトの名無しさん mailto:sage [2015/07/16(木) 19:13:56.91 ID:sUV1QtUU.net]
プログラムしてからコミットコメントを練る習慣を逆にすることを勧める。

コミットコメントの内容は、コーディングする前に決めておく。
つまり、これから何をプログラムするのかをまず決める。
その後、コメント通りにプラグラムできたら完了、コミットする。

下記のページの Write preemptive comments でも推賞されている。
https://arialdomartini.wordpress.com/2012/09/03/pre-emptive-commit-comments/

こうすれば、何で更新したのか、と悩むことはなくなる。

832 名前:デフォルトの名無しさん mailto:sage [2015/07/16(木) 19:24:57.63 ID:sUV1QtUU.net]
>>805
「○○機能を実装」というのがデカすぎるから、
メモを見なきゃ把握できなくなるんだよ。
で、メモを見るのを忘れて困ったことになる。

これを改善しないと、git に君が望む機能(ツール)があったとしても、
全く役に立たなくなる。


更新内容の粒度はもっともっと小さくしなきゃだめだ。
10分かそこらでプログラムできる程度の大きさにしてみな。
そうすれば、メモを見る必要すらなくなる。

833 名前:デフォルトの名無しさん mailto:sage [2015/07/16(木) 20:38:56.88 ID:IhY29Rvn.net]
VCSがない時代の人
1.あれやこれや編集して、時々変更が失なわれないようにファイルに保存
2.目的の変更が完了したところで、バックアップを作成しておく

VCSの時代の人
1. 以前と同じ
2. リポジトリにコミット

DVCSの時代の人
1.編集中の変更は基本自動保存。昔のファイル保存するような感覚でローカルリポジトリにコミット。
2.目的の変更が完了したところで、履歴をまとめてリモートリポジトリにプッシュ。

この運用方法のポイントは
ファイルは自動保存すること。
ローカルコミットにはまとまった意味など不要。
単に編集量や、経過時間のチェックポイントとしてコミットする。
このコミットコメントは、いい加減なメモや、あるいはコメントなしでもよい。

834 名前:デフォルトの名無しさん mailto:sage [2015/07/17(金) 00:55:21.98 ID:6Y2ZhytJ.net]
Android studioというかIntelliJ IDEAでGitと連動させたソースの編集がまさに>>827のDVCSの時代の人のやりかたができて便利
ファイルへの保存についてはまったく気にする必要がない
ソースの編集画面でHEAD内容と差分のある行の左端に常に印がつく
その印をクリックすると編集前の内容がポップアップで表示されて、行を編集前の状態に戻すとかこのポップアップから操作できる
ソースの編集画面からファイル単位のコミットとかできるし、--amend指定なんかもワンタッチ
HEADと差分あるファイルの一覧を表示してる窓からまとめて全部コミットとかもできる

これで行単位のコミットとかできたら完璧なんだけどそれは無いみたい
IDEを起動したままコマンドラインでgit add -pしてcommitしてもIDE側でほぼ完璧に追従してくれるのでまあなんとかなってる

835 名前:デフォルトの名無しさん [2015/07/17(金) 04:20:41.08 ID:OfiHmkDl.net]
>>826
差分を1つ1つみなきゃいけないゴミコード打つなよ

836 名前:デフォルトの名無しさん mailto:sage [2015/07/17(金) 05:57:36.41 ID:JRoNxi4V.net]
パーツごとにブランチを分けて開発し、各パーツを統合する開発ブランチにマージして開発をする
or
パーツごとにリポジトリを分けて開発し、全てのパーツをサブモジュールとしてリポジトリ内に持つリポジトリで開発をする

どっちがいい

837 名前:デフォルトの名無しさん mailto:sage [2015/07/17(金) 13:27:11.26 ID:2DUlvwkL.net]
パーツごとにブランチ?
そんなことをやってるプロジェクトがありますか?って話だ。

838 名前:デフォルトの名無しさん mailto:sage [2015/07/17(金) 20:25:59.09 ID:zMQ3zlsL.net]
よっぽどの規模じゃないとあんまり細かくサブモジュール化しても面倒なだけだと思う



839 名前:デフォルトの名無しさん mailto:sage [2015/07/17(金) 20:45:24.33 ID:3x9AOrGu.net]
index.php
calendar.php
この2つのファイルを編集してまだaddをしてない状態なんですが
index.phpだけ編集しなかったことにして前回のコミットした時の内容のままにして、
calendar.phpだけコミットしたいんですが
どうやってindex.phpを更新してなかったことに出来ますか?

840 名前:デフォルトの名無しさん mailto:sage [2015/07/17(金) 22:56:30.48 ID:muZ+fGR1.net]
>>833
Indexの変更を手元に残しておきたければcalenderだけaddしてcommit

841 名前:デフォルトの名無しさん mailto:sage [2015/07/18(土) 17:46:21.84 ID:GcYCq0Aw.net]
iOSアプリ開発をsource treeで管理している初心者です。

今回チャット機能つきのアプリを制作しているのですが、ネイティブコード、サーバーサイド(php)、データベース(MySQL)を同時に管理するのは無理(もしくはかなり難しい)ですよね?

ネイティブコードとサーバーサイドはsource treeで管理するとして、
データベースの情報はコミット毎になんらかの方法で全テーブル情報をログ出力して、それをメモ代わりに置いておく…ということくらいしか思いつかないんですけど、どうでしょうか。

サーバー連携が必要なアプリって、みなさんどうやってGitで管理してるんでしょうか…

842 名前:デフォルトの名無しさん mailto:sage [2015/07/18(土) 20:15:32.34 ID:5OYZKZ4e.net]
普通、バージョン管理の対象にするのはDDL、初期データ、設定ファイルくらいだろ。
コミットごとのテーブル情報って、何を管理しようとしてるんだか。

843 名前:デフォルトの名無しさん mailto:sage [2015/07/18(土) 21:05:27.99 ID:Xl228nsE.net]
俺もデータ内容まで保存しようというのはかなり冗長な気がする。
スキーマ更新のSQLのみバージョン管理、
DBのバックアップは別にダンプしてアーカイブだろうな。

844 名前:デフォルトの名無しさん mailto:sage [2015/07/19(日) 06:20:36.38 ID:KkAp073H.net]
>>835
データの中身は管理対象外、データベースのバックアップの問題

ソフトが対応するデータベースのインターフェースと言う意味では
クエリー処理のプロシージャをDB側で組んでおくのが一番簡単だけど
どうしてもというならDBをゼロから構築するスクリプトなりバッチなりを書いて
それをGitで管理せておく

なんにしろデータベースとアクセスアプリは分離しておくのが大切

845 名前:デフォルトの名無しさん [2015/07/19(日) 06:48:36.12 ID:EU0ROg42.net]
特定のデータの混入がバグの原因になる場合
git bisect で特定したければ
DB のバックアップも git 管理に入れる必要がある

846 名前:デフォルトの名無しさん mailto:sage [2015/07/19(日) 07:28:28.07 ID:KkAp073H.net]
>>839
なるほどそういう考え方もあるか

847 名前:デフォルトの名無しさん mailto:sage [2015/07/19(日) 09:06:48.58 ID:wG1rbxp8.net]
バグはデータじゃなくてコードの側に存在するものだろ。
bisectするにしても、バグを再現できる同じデータを使わなければ見つかるもんも見つからなくなると思うが。

848 名前:デフォルトの名無しさん mailto:sage [2015/07/19(日) 09:12:53.24 ID:I0iNBGYL.net]
確かにその場合単体テストを増やすべきな気がするな



849 名前:デフォルトの名無しさん mailto:sage [2015/07/19(日) 12:04:49.68 ID:Npxm1YBj.net]
>bisectするにしても、バグを再現できる同じデータを使わなければ

そのためにコミットごとにデータもダンプするんじゃないのか?
再現ももちろんデータ書き換えでテスト実行

850 名前:デフォルトの名無しさん mailto:sage [2015/07/19(日) 12:48:59.20 ID:wG1rbxp8.net]
bisectは基本的に、新たに判明したバグについて過去にさかのぼって原因箇所を特定する
ためのものだと思っていたが。
テストデータもcommit時点のものを使うとすればその時点で既にbadだったということになるが、
そういう運用していたらbisect役に立たないんじゃね?

もちろん、bisectを使うつもりがなければビルドが通らないcommitするのも自由だと思うんで
それは別の話として。

851 名前:デフォルトの名無しさん mailto:sage [2015/07/19(日) 12:59:24.27 ID:3NrA4A7J.net]
>>843
> そのためにコミットごとにデータもダンプするんじゃないのか?

データは0の状態から、テストコードを書くんだよ。

テストコードの中でデータをリストアする
普通はフィクスチャっていうけどな。

当たり前だが実データまるまるダンプしてリストアなんてしない。
そんなことをやったら効率よくテストがかけない。
テスト全体が一つのデータに依存してしまうからね。


正しいテストとは、テスト対象(ファイル単位等)の
テストに必要なデータだけを入れてテストする。
だからテスト実行前にはデータを全て削除する。

データベース全体をダンプするなんてことはしない。

852 名前:デフォルトの名無しさん mailto:sage [2015/07/19(日) 13:06:34.44 ID:I0iNBGYL.net]
テスト用DBの他にモック、リポジトリパターンも使われるな

853 名前:デフォルトの名無しさん mailto:sage [2015/07/19(日) 14:22:36.05 ID:4suFbVBW.net]
データもgitで管理するって新しいなw

854 名前:デフォルトの名無しさん [2015/07/22(水) 10:52:31.65 ID:phbUY/16.net]
git checkout develop
git branch -b my_topic_branch
とした後でいくつかcommit後、「my_topic_branch作成直後〜さっきのcommitまで」をrebaseしたいとき、
git rebase -i ***
の***には、何と指定すればいいですか?

855 名前:デフォルトの名無しさん [2015/07/22(水) 12:19:49.68 ID:EiNSX7P4.net]
何も指定しない

856 名前:デフォルトの名無しさん [2015/07/22(水) 13:10:35.36 ID:phbUY/16.net]
何も指定しないと怒られます。

$ git rebase -i
usage: git-rebase [-i] [options] [--] <upstream> [<branch>]
or: git-rebase [-i] (--continue | --abort | --skip)

ちなみに、今はcommitの数を数えて、HEAD~~~~~~とかしてます。

857 名前:デフォルトの名無しさん [2015/07/22(水) 13:17:41.56 ID:EiNSX7P4.net]
じゃあ、git rebase -i develop

858 名前:デフォルトの名無しさん [2015/07/22(水) 13:54:39.00 ID:phbUY/16.net]
>>851
おお、それでいけました。
ありがとう。



859 名前:デフォルトの名無しさん mailto:sage [2015/07/22(水) 16:41:20.44 ID:zBOMfGM9.net]
>>851はgit checkout developの後にdevelopへ何かコミットされた場合、
たぶん>>848が期待してる動作にはならんぞ

860 名前:デフォルトの名無しさん [2015/07/22(水) 17:25:54.55 ID:EiNSX7P4.net]
そういや、そうだね。

じゃあ、
git rebase -i `git merge-base develop HEAD`
ってのが、あったけど、素直にgit logして分岐点のcommit idを調べた方がはやいかもね。

別のブランチとの分岐点を起点に rebase -i する git エイリアス
qiita.com/uasi/items/70d4358c3c70c64f4261

861 名前:デフォルトの名無しさん [2015/07/22(水) 18:24:49.47 ID:phbUY/16.net]
>>853
なるほど、topic branchを複数作って作業するときまずいわけですね。

>>854
merge-baseのこと知らなかったので、もう少し調べてみます。

862 名前:デフォルトの名無しさん [2015/07/27(月) 15:06:20.98 ID:+ejnTFZv.net]
質問させてください
公開版のHTMLと公開を控えたHTMLがあって、これをgitで管理しようかと考えているのですが
公開版(Master)、確認用(Blanch)とした場合、Blanchは確認環境(HTTPアクセス)として機能させることはできるのでしょうか

863 名前:デフォルトの名無しさん mailto:sage [2015/07/27(月) 15:24:49.11 ID:aZg91AP9.net]
>>856
何をどうしたいのかもうちっと具体的に説明しないと
ツッコミようがないぞ?

864 名前:デフォルトの名無しさん mailto:sage [2015/07/27(月) 15:45:36.34 ID:biNPOZMH.net]
>>856
masterブランチはどうやって確認環境として機能させるつもりなの?

865 名前:デフォルトの名無しさん [2015/07/27(月) 15:47:39.18 ID:+ejnTFZv.net]
>>857
説明不足ですみません!

たとえば
example.com/public/
この「public」内のコンテンツをgitで管理するとして
「public150727」という名前で「public」のブランチの更新版を作ったときに、ブランチ「public150727」の内容を確認環境としてブラウザで閲覧する方法はないものかと思いまして質問しました。

もっと砕いた言い方をしますと、gitと使えない環境の人にブランチ「public150727」の内容をブラウザで見てもらうことはできるのでしょうか。

866 名前:デフォルトの名無しさん [2015/07/27(月) 15:50:15.95 ID:+ejnTFZv.net]
>>858
そうですね、勝手な思い込みで公開版をマスターという前提で書いていました
特に公開中のバージョンがマスターであるこだわりはありません
失礼しました!

867 名前:デフォルトの名無しさん [2015/07/27(月) 15:56:55.58 ID:T5zoWN7L.net]
masterブランチをexample.com/public/でアクセスできるようにする手順と同じ手順でできる

868 名前:デフォルトの名無しさん [2015/07/27(月) 16:03:28.50 ID:+ejnTFZv.net]
>>861
「public150727」をpushするということですね!



869 名前:デフォルトの名無しさん [2015/07/27(月) 16:16:20.09 ID:T5zoWN7L.net]
>>862
> 「public150727」をpushするということですね!
違う。そういうレイヤーの話じゃない。
「更新されたmasterブランチ」を「example.com/public/でアクセスできるようにする手順」だ。

870 名前:デフォルトの名無しさん mailto:sage [2015/07/27(月) 16:23:58.54 ID:ybeDhwD5.net]
>>859
ローカルサーバーで見るではだめなの?
りぽじとりを2つ分けて
それぞれ別々でステージングサーバーにでぷろい環境にするとか

871 名前:デフォルトの名無しさん [2015/07/27(月) 16:50:45.48 ID:+ejnTFZv.net]
>>863
理解が浅くてすみません
自分の知識ですとブランチごとにURLを割り当てるように読み取れるのですが、おそらくそういうお話ではなさそうなのでもっと勉強します!

>>864
やっぱりステージングサーバーで確認→本番環境にPUSHするのが安心ですね


皆さんありがとうございました!

872 名前:デフォルトの名無しさん [2015/07/27(月) 16:52:44.86 ID:T5zoWN7L.net]
まぁ、本人がこれで解決したと思うんならそれでいいか・・・。

873 名前:デフォルトの名無しさん [2015/07/27(月) 17:03:36.01 ID:+ejnTFZv.net]
>>866
よかったら>>863に書いていただいた手順の概要、もしくは参考のURLを教えていただけませんでしょうか

874 名前:デフォルトの名無しさん mailto:sage [2015/07/27(月) 17:17:59.43 ID:T5zoWN7L.net]
>>867
> よかったら>>863に書いていただいた手順
いやいや、それは俺らにはわからんよ。
その手順がわかりさえすれば、それと同じ手順でできるだろってこと。

ローカルのmasterを変更して、それをサーバにpushしたら、example.com/public/の内容が更新されるんだろ?
その仕組みは一体誰が構築したんだ?

875 名前:デフォルトの名無しさん mailto:sage [2015/07/27(月) 17:18:41.69 ID:aippD/Jn.net]
.gitをWebサーバーで公開していないか心配になるな

876 名前:デフォルトの名無しさん mailto:sage [2015/07/27(月) 17:21:38.69 ID:T5zoWN7L.net]
>>869
うわ、その発想はなかったわ。

877 名前:デフォルトの名無しさん mailto:sage [2015/07/27(月) 17:27:25.72 ID:JJPg7kwZ.net]
業務使うコマンドを全部教えてください
来月からアルバイトなんですけど
clone,log,reflog,reset,branch,push checkout,commit,add,rm,mvはしってます

878 名前:デフォルトの名無しさん [2015/07/27(月) 18:21:27.18 ID:bJ8mI018.net]
>>871
git --help



879 名前:デフォルトの名無しさん mailto:sage [2015/07/27(月) 21:16:18.54 ID:v7fIr+eP.net]
>>869
Push to deploy の改善 2.3.0 で入ってるし .git を不可視にしとけば個人サイトくらいなら問題ないんじゃない?

880 名前:デフォルトの名無しさん mailto:sage [2015/07/27(月) 22:46:51.50 ID:aZg91AP9.net]
>>859
やつぱりまだわからないや

やりたいのは次のどっち?

1)
公開webページとかのhtmlその他諸々をgitで管理して
どっかのブランチにコミットすると自動的に公開webページになるようにしたい
さらに、公開前の事前確認用のページも用意したい

2)
なんかプログラム開発中のソースコードとかをgitで管理しておいて
みんなにレビューしてもらうためにwebページで閲覧できるようにしたい

881 名前:デフォルトの名無しさん [2015/07/27(月) 22:48:07.44 ID:u9s58J+y.net]
A:ある手順を踏めばできるぞ
B:プッシュすればいいんですね
A:そういうレイヤーの問題じゃない
B:ではどういう手順で?
A:それはわからん、プッシュすればできるだろ

なんとなくこのスレの闇を垣間見たような気がするぜ

882 名前:デフォルトの名無しさん mailto:sage [2015/07/27(月) 23:00:40.37 ID:aZg91AP9.net]
あ、よく見たら1)の方だね。

俺だったらポストフックスクリプト書こうとするな
特定のブランチにコミットされたら対応するディレクトリにexportするようなやつ

gitに付属のフックスクリプトのサンプルに似たようなことやるのがあったと思うから調べてみ


手抜きバージョンなら
事前確認用のディレクトリにクローンしておいて
1分おきとかでpullかけるようにcronをセットしちゃう

こんなあたりでいかが?

883 名前:デフォルトの名無しさん mailto:sage [2015/07/28(火) 13:25:37.42 ID:3O5DcyiA.net]
Jenkins とかの Pull Request Builder とかでいいんじゃないかと
あとは heroku なにかに push して確認すればいいんじゃない?

884 名前:デフォルトの名無しさん mailto:sage [2015/07/28(火) 16:06:24.66 ID:iS6umbvt.net]
2.4.7 と 2.5.0 がリリースされたね。
https://github.com/git/git/releases/tag/v2.4.7
https://github.com/git/git/releases/tag/v2.5.0

885 名前:デフォルトの名無しさん mailto:sage [2015/07/28(火) 23:54:34.28 ID:Z/s3EayV.net]
git v2.4.3

mv index.php sub/list.php
git add .
git commit -m "backup"

コミットした後に
rename index.php => sub/list.php (74%)
って表示されたんですがこれってindex.phpをgit mvで移動したのと同じことですか?
ato
74%って何を表してるんですか?

886 名前:デフォルトの名無しさん mailto:sage [2015/07/29(水) 00:17:46.73 ID:j0BJwxBz.net]
ファイルの一致率。ファイルの修正と移動を同時にしたんだね。
gitは移動を記録していないので、ファイルの一致率から移動を推測している。

887 名前:デフォルトの名無しさん mailto:sage [2015/07/29(水) 09:32:05.34 ID:bPiFDPfp.net]
>>859
よそ様の記事だがこんな感じだよ、hook script

< qiita.com/fnobi/items/98bd5d1c83c010842733 >

ぜひバルスしてくれたまえ

888 名前:デフォルトの名無しさん [2015/07/29(水) 15:20:03.83 ID:YsMaiv/S.net]
あるフォルダの中のあるフォルダ・ファイル以外を無視したいんだけど
.gitignoreをどう書いたらいいかわからない

hoge/piyo  ←無視しない
hoge/fuga/ ←無視する
hoge/foo/  ←無視する
hoge/bar   ←無視する

たとえばこんな感じで、今は fuga,foo,bar を毎度列挙してるけど
今後フォルダがどんどこ増えるとするとちょっと嫌な気分になる



889 名前:デフォルトの名無しさん mailto:sage [2015/07/29(水) 16:33:49.47 ID:bPiFDPfp.net]
>>859

890 名前:デフォルトの名無しさん mailto:sage [2015/07/29(水) 16:38:56.52 ID:bPiFDPfp.net]
>>859

How to rebuild from update hook

で検索してみ

kernel.orgでのドキュメント自動公開用のフックスクリプトが解説付きで買いてあるよ

あなたの場合はこれよりは簡単なはず

891 名前:デフォルトの名無しさん [2015/07/29(水) 17:01:12.31 ID:1zEW+9y+.net]
hoge/!piyo

892 名前:デフォルトの名無しさん mailto:sage [2015/07/29(水) 19:54:41.79 ID:syqOZkA4.net]
>>878
「Git 2.5」がリリース
osdn.jp/magazine/15/07/30/044700

893 名前:デフォルトの名無しさん mailto:sage [2015/07/30(木) 01:34:27.13 ID:6b1uCZJv.net]
おお、ついにPerforceまで取り込む気か!

894 名前:デフォルトの名無しさん mailto:sage [2015/07/31(金) 08:21:08.61 ID:Uyj1+FiM.net]
指定したディレクトリ以下のファイルをスキャンして
編集してから1週間以上コミットせずに放置してあるファイルを
一覧で出力するようなスクリプトかツールあったら教えて下さい

雑多なスクリプトをgitで管理していて安定したらコミットしようかなーと思っていて
そのまま忘れて半年放置のようなファイルを検出したいのですが

895 名前:デフォルトの名無しさん [2015/07/31(金) 08:36:32.35 ID:709JoO30.net]
git diff

896 名前: HEAD []
[ここ壊れてます]

897 名前:デフォルトの名無しさん mailto:sage [2015/07/31(金) 09:00:48.29 ID:u6UInjxJ.net]
>>888
> 雑多なスクリプトをgitで管理していて安定したらコミットしようかなーと思っていて
svnじゃないんだから、コミットしろよw

svnと違ってコミット=サーバーに送信 ではない。

そこがsvnのだめなところであり、gitの優れたところなんだよね。
gitなら安定しなくてもコミットできる。
もしバグが見つかれば修正してrebaseしてまとめてしまえばいい。

だから意味がある単位でコミットしていって、
あとでまとめて安定したと思ったらサーバー(共有リポジトリ)にpushすればいい。
(work in progress的なやりかたなら、作りかけでもpushするのもあり)

そこからレビューをうけてOKになったらmasterにマージする。

「安定したらコミット」という発想をやめないといけない
その発想だとどうしても一回のマージのコードが多くなりすぎる。
小さく機能毎にコミット、gitではそれができる。

898 名前:デフォルトの名無しさん [2015/07/31(金) 09:30:41.27 ID:709JoO30.net]
コンパイルできないものもコミットしていいですか?



899 名前:デフォルトの名無しさん mailto:sage [2015/07/31(金) 09:51:16.96 ID:02j0y00V.net]
いいよ

900 名前:デフォルトの名無しさん mailto:sage [2015/07/31(金) 10:08:59.48 ID:VSZ3MRZU.net]
>>891
そもそもスクリプトはコンパイラしないし

901 名前:デフォルトの名無しさん mailto:sage [2015/07/31(金) 10:23:03.17 ID:5Be3R/21.net]
「意味がある単位」でコンパイルできないものという発想が良くわからない。

902 名前:デフォルトの名無しさん mailto:sage [2015/07/31(金) 12:30:24.06 ID:Q/Fv6mzV.net]
毎朝コミットで良いよ

903 名前:デフォルトの名無しさん mailto:sage [2015/07/31(金) 12:32:31.44 ID:02j0y00V.net]
svnのコミットに近いのは、masterへのpushじゃないかね

904 名前:デフォルトの名無しさん mailto:sage [2015/07/31(金) 13:05:45.97 ID:5Be3R/21.net]
>>888
ひょっとして、etckeeperが求めるものだったりする?

905 名前:デフォルトの名無しさん mailto:sage [2015/07/31(金) 14:59:02.99 ID:Pi4vilvw.net]
https://git-scm.com/book/ja/v2/使い始める-Gitのインストール
ここの一番最後に
>次からはGitを使ってGitそのものをアップデートできます:
って書いてあるんですが
これってmakeとかしなくてもgit pullしただけで新しいバージョンのGitが使えるようになるってことですか?

906 名前:デフォルトの名無しさん mailto:sage [2015/07/31(金) 15:49:47.76 ID:5Be3R/21.net]
>>898
ならない。

907 名前:デフォルトの名無しさん mailto:sage [2015/07/31(金) 15:51:07.09 ID:R58DjZqg.net]
>>898
インストールしたGitを使ってGitのソースをアップデートできるって意味だな
当然ソースをアップデートしたあとmakeは自分でやる

908 名前:デフォルトの名無しさん mailto:sage [2015/08/01(土) 05:22:16.40 ID:fbUoNrmE.net]
>>891
> コンパイルできないものもコミットしていいですか?

他人に渡さないならば何の問題もない。

svnとか使ってると、この自分だけが触れる
コミットという概念がわからんのだろうな。



909 名前:デフォルトの名無しさん mailto:sage [2015/08/01(土) 05:24:32.97 ID:fbUoNrmE.net]
>>895
> 毎朝コミットで良いよ
なんで1日の区切りでコミットしてるんだよw

作業の区切りでコミットしろよ。
大抵の場合、1日に数回コミットするもんだ

910 名前:デフォルトの名無しさん mailto:sage [2015/08/01(土) 05:32:58.26 ID:fbUoNrmE.net]
>>894
> 「意味がある単位」でコンパイルできないものという発想が良くわからない。

コードとして意味がある単位だと、コンパイルできないことはないはずだね。

だけど、作業として見るとコンパイルできないけどコミットすることはあり得る。

例えば何かの修正をする時、設計Aの方法で実装するか、
設計Bの方法で実装するか悩んでたとする。

悩んで出てもわからないのでざっくりと作って検証することにする。
設計Aである程度作って、設計Bである程度作る。

そういった場合に、コンパイルできない状態でコミットすることはあるだろう。

もちろんこれはマージするときには、コンパイルできる意味がある単位に直すのは
当たり前だけど、作業中であればコンパイルできない単位でコミットすることはある

これがsvnだと即サーバーにpushされて周りに迷惑をかけたりすることがあるけど、
gitだと自分だけのコミットにしておけばいいので、中途半端なコードでも
バンバンコミットできる。というかgitならコミットしていいんだよ。
そのためにあるのがrebaseという機能なんだから。

911 名前:デフォルトの名無しさん mailto:sage [2015/08/01(土) 06:00:09.26 ID:Fq14Oy7Q.net]
msysgitは2系が出てくる気配ないし
もうgitに追従する気は無いってことか

912 名前:デフォルトの名無しさん mailto:sage [2015/08/01(土) 06:17:46.92 ID:fbUoNrmE.net]
>>904
俺はwindowsだとcygwinを使ってるよ。
色々他を試したが結局cygwinに戻ってきた。

昔と違ってマシンスペックが上がったから
たいして重さを感じないしね。
zshも使えるし。

913 名前:デフォルトの名無しさん mailto:sage [2015/08/01(土) 07:37:18.72 ID:O3MfLUJM.net]
>>904
v2系はこれ?
使ったこと無いけど
git-for-windows.github.io/

914 名前:デフォルトの名無しさん mailto:sage [2015/08/01(土) 11:19:27.66 ID:BlX74pFF.net]
>>903
あるある
俺も「筋が悪そうだからこのブランチは放棄」ってコメント付けてコミットした事は何度かある

915 名前:デフォルトの名無しさん mailto:sage [2015/08/01(土) 14:26:03.50 ID:fbUoNrmE.net]
他にも思い出した。

とある修正をしていて、コードを書いていると
うぉい、ここバグってるじゃねーか
(そのせいでとある修正がちゃんとできない)

一旦コミットしておいて、
先にバグの修正をコミットして、
んで戻ってくる。

こういった時に中途半端な状態でコミットする。

戻ったあとはバグ修正状態からの変更ににrebaseする。

このようにgitの素晴らしさっていうのは、
ファイルの管理やバックアップではなく、
実際の開発で起こることに対応するための機能なんだよ。

履歴管理ツールではなく、開発ツール。
そう認識しないといけない。

916 名前:デフォルトの名無しさん mailto:sage [2015/08/01(土) 21:25:30.14 ID:fuLtc72j.net]
>>908
rebaseしたくないので、同じようなことを
rebaseしないでやる方法も教えてください。
おねがいします。

917 名前:デフォルトの名無しさん mailto:sage [2015/08/01(土) 21:30:36.62 ID:cZ9y3hcR.net]
>>909
「rebaseしたくない」ではなく
「馬鹿だからrebaseを使える能力がない」の
間違いだろ?

「したくない」ではなく「できない」

自分に嘘をついてはいけない。

918 名前:デフォルトの名無しさん mailto:sage [2015/08/01(土) 21:39:52.86 ID:Co43fSsi.net]
正解は「rebaseする必要はない」でした



919 名前:デフォルトの名無しさん mailto:sage [2015/08/01(土) 22:52:16.85 ID:cZ9y3hcR.net]
道具は適切に使うものだ。

目的のために作られた専用のものがあるのであれば
それを使えばいい。

それが必要だから作られたわけなんだから。

920 名前:デフォルトの名無しさん mailto:sage [2015/08/01(土) 23:12:53.23 ID:h+APIw5a.net]
stashやcommit --amendや--no-commit系使える時は使う。rebase代わりにformat-patch使うことケースも1%くらいはある。
でもほぼrebase -iだな。

921 名前:デフォルトの名無しさん mailto:sage [2015/08/01(土) 23:18:37.12 ID:Co43fSsi.net]
道具は適切に使うものだ。

そして、それがあるから使うというのは適切な使い方ではない。

それは道具に使われてると言うんだから。

922 名前:デフォルトの名無しさん mailto:sage [2015/08/01(土) 23:31:46.83 ID:fuLtc72j.net]
>>910
rebaseという思想が好きじゃないんです。

それはそれとして、rebaseを使わないと出来ないことなのですか?

923 名前:デフォルトの名無しさん mailto:sage [2015/08/01(土) 23:49:08.71 ID:RZc3oG0T.net]
とりあえず空行交えて語りたい人たちは運用スレ行ってください

924 名前:デフォルトの名無しさん mailto:sage [2015/08/02(日) 00:01:19.35 ID:ID0TD3H5.net]
gitは運用方法に派閥っていうか宗派っていうか宗教戦争みたいなもんがあるのか

925 名前:デフォルトの名無しさん mailto:sage [2015/08/02(日) 00:09:46.39 ID:KQ3UQl73.net]
運用が自由すぎて
どこかの宗派の戒律を受け入れたほうが楽、と言うのはあるな

俺はgit-flow派

926 名前:デフォルトの名無しさん mailto:sage [2015/08/02(日) 00:12:00.18 ID:uoA7o0bf.net]
>>915
> それはそれとして、rebaseを使わないと出来ないことなのですか?



rebaseを使うとやりたい事が簡単にできるんだよ。

やりたい事=思想。

rebaseを使わなくても、同じことをするのであれば
rebaseの思想は正しいということとなんだが。

927 名前:デフォルトの名無しさん mailto:sage [2015/08/02(日) 00:15:40.65 ID:gKbzhWvd.net]
rebaseしたくないならmergeすりゃいいじゃん

928 名前:デフォルトの名無しさん mailto:sage [2015/08/02(日) 00:37:19.06 ID:eV4xuuQq.net]
複数コミットにまたがるamendのようなrebase
-> rebase開始位置に指定したコミットは変らない -> HEADのファイルは変化しない

分岐した元ブランチとの関係をFF状態にするためのrebase
-> rebase開始位置に指定したコミットが別のコミットになる -> HEADのファイルが変化する

良く知らない人はrebaseっていうと後者しか思い浮かばなくて
mergeすればいいじゃんとか言い出す



929 名前:デフォルトの名無しさん mailto:sage [2015/08/02(日) 07:51:47.64 ID:zAkA6wkz.net]
rebaseは手段の一つであるが目的ではない
rebaseの思想とかw馬鹿はこれだから怖い

930 名前:デフォルトの名無しさん mailto:sage [2015/08/02(日) 08:42:49.05 ID:gKbzhWvd.net]
rebaseでしかできないことがあるのは当たり前。

rebase以外で目的を達成することができることがある != すべてrebase以外で実現できる

931 名前:デフォルトの名無しさん mailto:sage [2015/08/02(日) 09:00:44.24 ID:dTRZmQiN.net]
論理値の比較に等号不等号つかうひとって筋が悪いよね

932 名前:デフォルトの名無しさん mailto:sage [2015/08/02(日) 13:19:25.28 ID:5pxTtzkh.net]
>>924
世間のレベルに合わせてるんだよ。
あと、rebaseは名前が嫌い。

933 名前:デフォルトの名無しさん mailto:sage [2015/08/02(日) 13:30:22.74 ID:RcysspGc.net]
たかがgitを使える程度で尊大な大先生がよくわくスレだ

934 名前:デフォルトの名無しさん mailto:sage [2015/08/02(日) 20:18:22.98 ID:HQ+xGyu0.net]
linuxでgit pullで新しいコミットを取得したら自動でビルドしたいんですけど
どうやればいいのか教えてください

935 名前:デフォルトの名無しさん mailto:sage [2015/08/02(日) 21:02:00.58 ID:j05l/s8s.net]
>>923
> rebaseでしかできないことがあるのは当たり前。

rebaseでしかできないことなんてない。

全ては効率の問題。
その他の方法でもやれるが、
効率が凄く悪くなる。

例えて言うのなら、東京から大阪まで徒歩でも行ける。
車でしか行けないわけじゃない。それと同じ。

ある目的のためにrebaseという手段が作られた。
rebaseは目的ではない。目的を最速で達成するための
手段なのだ。使わない理由がない。

936 名前:デフォルトの名無しさん mailto:sage [2015/08/02(日) 22:07:56.09 ID:zAkA6wkz.net]
rebaseでしかできないことなんてないし
rebaseしなければいけないこともない

ではなぜrebaseするのか?

これは哲学的であり、そしてかなり難しい問題のようにみえる
しかし、実は我々はその答を既に知っているのだ

その答とは

そこにrebaseがあるからだ

937 名前:デフォルトの名無しさん mailto:sage [2015/08/02(日) 22:13:02.07 ID:j05l/s8s.net]
いや、rebaseがなかったから作ったんだよw

Linusがね。必要だと思ったから作った。

938 名前:デフォルトの名無しさん mailto:sage [2015/08/02(日) 22:51:23.25 ID:sASJ2DPa.net]
Linusまたはその後継者が必要だと思ったからrebaseが作られた

きっとそうだろう

でも俺はLinusじゃない



939 名前:デフォルトの名無しさん mailto:sage [2015/08/02(日) 22:54:55.58 ID:I5g9+RU+.net]
Linusよりも劣る人間が言っても説得力ないな。

940 名前:デフォルトの名無しさん mailto:sage [2015/08/02(日) 23:04:48.44 ID:sASJ2DPa.net]
>>932
つまりだ、Linusのために作られた道具を
俺ごときが使いこなせるわけがない

ということだ

941 名前:デフォルトの名無しさん mailto:sage [2015/08/03(月) 08:13:34.83 ID:6s/iApNK.net]
誰でもrebaseを使う事によって最速のrebaseが達成出来る
全く問題はない

942 名前:デフォルトの名無しさん mailto:sage [2015/08/03(月) 17:13:09.03 ID:CE59HNJ8.net]
>>908
> 一旦コミットしておいて、
> 先にバグの修正をコミットして、
> んで戻ってくる。
stashしろよ。

943 名前:デフォルトの名無しさん mailto:sage [2015/08/03(月) 20:22:26.69 ID:OzQ4PZKS.net]
>>935
やってるよ?

コミットしてないファイルがあるとrebaseできないからね。
stashしても作業中のファイルを一旦対比してから、

その後で修正してrebaseする。

944 名前:デフォルトの名無しさん mailto:sage [2015/08/03(月) 20:35:53.78 ID:nTSIXxVa.net]
rebaseってどういう機能なの?
コミット済みのコミットにマージするの?

945 名前:デフォルトの名無しさん mailto:sage [2015/08/03(月) 20:40:24.64 ID:6s/iApNK.net]
履歴を改竄するだけの、稀に便利だけど、必然性は全くない機能。

946 名前:デフォルトの名無しさん mailto:sage [2015/08/03(月) 20:43:36.27 ID:OzQ4PZKS.net]
間違いをしないと言う人間には
不要でしょうなぁw

タイポしたことがない人、手を揚げて!
閻魔様の前に連れて行ってあげる♪

947 名前:デフォルトの名無しさん mailto:sage [2015/08/03(月) 20:57:28.47 ID:DLpcuCaG.net]
rebaseが無かったら単なるバージョン管理ツールだね
rebaseがあるから差分管理編集ツールとでも呼ぶべき別次元のツールになった

948 名前:デフォルトの名無しさん mailto:sage [2015/08/03(月) 21:01:48.03 ID:Po35HDPO.net]
rebaseがないと、もうバグはないかな?とか考えてしまって
まだコミットしないで様子を見よう。とかやってしまうんだよね。
そうすると小さくコミットすることが難しくなってしまう。



949 名前:デフォルトの名無しさん mailto:sage [2015/08/03(月) 21:20:26.33 ID:6s/iApNK.net]
バグの痕跡を秘密裏に闇に葬る暗黒のrebase使い達

950 名前:デフォルトの名無しさん mailto:sage [2015/08/03(月) 23:17:22.87 ID:nTU4lW67.net]
>>937
rebaseはブランチの分岐点を変更する機能
gitより前にclearcaseなどで実装されていてgit固有の機能という訳ではない
rebaseにコミットの編集・結合・取捨選択する機能を追加して
より柔軟にコミットを直せるようにしたのがgitかな

951 名前:デフォルトの名無しさん mailto:sage [2015/08/04(火) 02:11:14.86 ID:pFxIT8vh.net]
>>942
リリースしてないもののバグを
なんで痕跡残さないといけないんだ?

952 名前:デフォルトの名無しさん mailto:sage [2015/08/04(火) 08:51:51.90 ID:1pDlaOkO.net]
>>942
成果物の途中経過を次元の狭間に葬り去る古のno-commiterとの血で血を洗う闘争の幕開けであった

953 名前:デフォルトの名無しさん mailto:sage [2015/08/04(火) 09:07:24.48 ID:LaebqzUe.net]
前のコードはコメントアウトして残せ。
リリースしてないコードも全部だ。

954 名前:デフォルトの名無しさん mailto:sage [2015/08/04(火) 09:35:03.57 ID:ioOBuo8G.net]
年代記に残る争いになるわけですな

あ、改竄派が勝てば、そもそも争いはなかった事になって、年代記には残らないね

え?言葉が悪い?
では修正的歴史観と呼び直しましょう。

955 名前:デフォルトの名無しさん mailto:sage [2015/08/04(火) 10:08:20.01 ID:rYHf65xq.net]
>>936
> >>935
> やってるよ?
は?stashせずにコミットしてんだろ?

956 名前:デフォルトの名無しさん mailto:sage [2015/08/04(火) 14:23:44.57 ID:jQzRldfC.net]
コミットにランク機能がほしい

とりあえずバックアップ代わりのコミットと
コンパイル通ったコミットとガッツリテスト済みのコミットと
それぞれ記録したいけど、ログをみるとき
全部出てしまうのはうっとおしい
(ガッツリテストとおったログだけみたい)

957 名前:デフォルトの名無しさん mailto:sage [2015/08/04(火) 14:36:08.82 ID:rYHf65xq.net]
>>949
それぞれ何かキーワードを決めて、ログ表示するときに絞り込めばいい。

958 名前:デフォルトの名無しさん mailto:sage [2015/08/04(火) 14:52:01.94 ID:wN0qaZCY.net]
>>949
それぞれブランチをつくればいいと思う



959 名前:デフォルトの名無しさん [2015/08/04(火) 15:01:54.07 ID:KT0L8boW.net]
チェックアウトってなんすか?
ホテルとかで家に変えるときチェックアウトしますよね?
そうすると部屋空いてるから、だれでもチェックインできるようになるんですか?

960 名前:デフォルトの名無しさん mailto:sage [2015/08/04(火) 15:56:53.06 ID:jQzRldfC.net]
>>950
今はそうやってる
>>951
それ前やってたけど、今どのブランチにいるかうっかり忘れるんだよね

961 名前:デフォルトの名無しさん mailto:sage [2015/08/04(火) 18:13:17.56 ID:rYHf65xq.net]
>>953
> それ前やってたけど、今どのブランチにいるかうっかり忘れるんだよね
bashだったら、git-prompt.shを使うといい。
プロンプトを
[username@ dirname] (issue-2701-add-hoge-api *) $
みたいにできる。

ついでにgit-completion.bashもインストールすれば、gitコマンドやbranch名をTabで補完できるようになる。

962 名前:デフォルトの名無しさん mailto:sage [2015/08/04(火) 20:39:05.58 ID:LaebqzUe.net]
>>949
普通に日本語でコメント書けばいい。

> ログをみるとき全部出てしまうのはうっとおしい
ブランチに含まれるコミットが多すぎるってことさ。

いろんなプロジェクトのマージコミット見てみ。
マージコミットの内容=ブランチの内容なわけだが、
ブランチに含まれるコミットは数個しか無い。

>>953
> それ前やってたけど、今どのブランチにいるかうっかり忘れるんだよね

>>954がいっている通り。
それはさすがにgitを使いこなせてない。
gitというかシェルに近い話だが。

初心者のうちは、なにか使いにくいと思ったら
自分の使い方が間違ってるのではないかって
考えることが重要だよ。

963 名前:デフォルトの名無しさん mailto:あげ [2015/08/05(水) 16:11:14.67 ID:qTT2Q3HY.net]
Git始めました

964 名前:デフォルトの名無しさん mailto:sage [2015/08/05(水) 22:03:19.51 ID:Y8QWrwSI.net]
冷えてるの?

965 名前:デフォルトの名無しさん mailto:sage [2015/08/06(木) 12:24:17.98 ID:YnB06pEs.net]
あったかいGit始めました

966 名前:デフォルトの名無しさん mailto:sage [2015/08/07(金) 21:38:28.11 ID:VjeH+b7c.net]
SourceTreeは結構バグ多いんだけど
代替GUIでお勧めはある?

967 名前:デフォルトの名無しさん mailto:sage [2015/08/07(金) 21:50:49.99 ID:TJyjY+1J.net]
あまりgitを使いこなせてないからか標準のgitgui?gittk?で割と十分だと思ってるんだけど
皆さんはどのへんに不満があるのでしょう?

968 名前:デフォルトの名無しさん mailto:sage [2015/08/07(金) 22:38:51.48 ID:zZgheHLR.net]
SourceTree時々固まるけどいうほどバグあるか?
コミットとブランチ編集はGUIでやってrebaseはCLIでやってる



969 名前:デフォルトの名無しさん mailto:sage [2015/08/08(土) 02:18:48.55 ID:hvTU1eUO.net]
>>961
とくに目立つのは
・日本語入力がたまにできなくなる
・日本語がたまに文字化けする
の2点かなぁ

970 名前:デフォルトの名無しさん mailto:sage [2015/08/08(土) 19:03:43.84 ID:eLygs58n.net]
ShiftJISとか使ってんの?

971 名前:デフォルトの名無しさん mailto:sage [2015/08/08(土) 21:12:25.04 ID:hvTU1eUO.net]
ShiftJISとか使ってませんよ?

972 名前:デフォルトの名無しさん mailto:sage [2015/08/08(土) 21:21:49.39 ID:vBlQRCao.net]
Windowsは全世界でShiftJISが使われているんだろう?

973 名前:デフォルトの名無しさん mailto:sage [2015/08/08(土) 23:20:35.51 ID:BQYw/0/m.net]
テスト

974 名前:デフォルトの名無しさん mailto:sage [2015/08/08(土) 23:27:16.33 ID:m5zrYZQl.net]
ファイル名とかは後方互換性でそうなっちまうわな
>>965
英語圏はとりあえず違うかな?

975 名前:デフォルトの名無しさん mailto:sage [2015/08/08(土) 23:32:51.12 ID:A+ZgS5ti.net]
>>965
ASCIIがShiftJISのサブセットだと大体そんな感じかな?
有名な円化するくらいで

976 名前:デフォルトの名無しさん mailto:sage [2015/08/08(土) 23:33:39.68 ID:PKfIE09h.net]
デモネ ダイジナカギモ
カギモ カエシタノ〜

    ∧_∧
   (*゚ー^)
   /つ¥ つ
  |*/;≡|@\
    ̄(/ U ̄
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
チャーンッッ ウォーッ シィーーッ
`∧∧ ∧∧∧∧ ∧∧
(  )  )  )  )

977 名前:デフォルトの名無しさん mailto:sage [2015/08/09(日) 00:06:42.83 ID:SZxZe4hf.net]
>>965
SJISなわけはないがフランスやロシアや中国の人のソースもたまに化けてるの見る
https://en.wikipedia.org/wiki/Windows_code_page

978 名前:デフォルトの名無しさん mailto:sage [2015/08/09(日) 01:38:16.85 ID:un4R4gw1.net]
なんか最近のニュースで
MSのVisualStudio2015でシフトJISじゃコンパイル失敗するからなんか設定してねってあったぞ
WindowsでもソースコードのデフォルトはもうUTF-8なんだよ



979 名前:デフォルトの名無しさん mailto:sage [2015/08/09(日) 16:53:09.64 ID:zMNscprH.net]
そりゃC#の話じゃないの

980 名前:デフォルトの名無しさん mailto:sage [2015/08/09(日) 17:04:53.01 ID:un4R4gw1.net]
べつにC#限定の話じゃないようだが
ぐぐるとC#の話が一番上にでてくるがなw

981 名前:デフォルトの名無しさん mailto:sage [2015/08/09(日) 17:21:44.28 ID:DsvXgH80.net]
2015だとC++もデフォルトUTF-8になったのか?
いちいち変更しなくて済むようになったんならありがたいが。

982 名前:デフォルトの名無しさん mailto:sage [2015/08/09(日) 17:25:29.84 ID:doZuGkX/.net]
>>974
たぶん2010あたりから

983 名前:デフォルトの名無しさん mailto:sage [2015/08/09(日) 17:43:56.94 ID:zMNscprH.net]
Win32でC++新規作成するとSJISだけど、これうちの環境のせいなのか?

984 名前:デフォルトの名無しさん mailto:sage [2015/08/09(日) 17:48:54.67 ID:TarQJqGz.net]
>>975
Visual Studio 2013 Community ではシフト JIS ですけど?

985 名前:デフォルトの名無しさん mailto:sage [2015/08/09(日) 21:40:02.06 ID:MwH/TAN+.net]
大丈夫だ、2015でもCP932のままだ

986 名前:デフォルトの名無しさん [2015/08/10(月) 05:15:36.78 ID:joKVIITR.net]
Windows10のcmd.exeまだchcp65001のバグ治らないな

987 名前:デフォルトの名無しさん mailto:sage [2015/08/10(月) 08:39:31.31 ID:woEY2l+M.net]
>>979
もうほとんどやる気ないでしょ
この部分だけでいいからソース開示して有志に改造させて欲しいわ

988 名前:デフォルトの名無しさん mailto:sage [2015/08/10(月) 09:29:36.92 ID:Y9npztmj.net]
同意

だけど git for windows だったかなんかについてくる UTF-8 対応の cmd.exe っぽいのは結構使える



989 名前:デフォルトの名無しさん mailto:sage [2015/08/10(月) 09:37:10.95 ID:7mEm0oAX.net]
今どきCLIとか石器時代の生き残りかよ

990 名前:デフォルトの名無しさん mailto:sage [2015/08/10(月) 10:58:28.36 ID:lE/gCziL.net]
だがまあgitに限って言えば
GUIだけでは心もとないのもたしか

991 名前:デフォルトの名無しさん mailto:sage [2015/08/10(月) 15:32:34.36 ID:iHuYT/si.net]
テキストベースは便利なんだよ
自動化とか簡単だし、それをgitで管理できるから

992 名前:デフォルトの名無しさん mailto:sage [2015/08/10(月) 17:41:57.41 ID:24CTSkEb.net]
CLIはデプロイツールと親和性が高い

993 名前:デフォルトの名無しさん mailto:sage [2015/08/10(月) 18:43:19.26 ID:wnxGShdH.net]
自動化に関わるツールはCLIがないと困るよね

994 名前:デフォルトの名無しさん mailto:sage [2015/08/10(月) 20:12:09.12 ID:Mkjl0645.net]
git pullで新しい更新を取り入れた時に指定したシェルスクリプトを実行したいんですけど
フックの名前を教えてください

995 名前:デフォルトの名無しさん mailto:sage [2015/08/10(月) 20:12:45.22 ID:Mkjl0645.net]
俺はGUIの見方がよく分かんないからCUIしか使ってないよ

996 名前:デフォルトの名無しさん mailto:sage [2015/08/11(火) 06:26:57.50 ID:/JNKK5gi.net]
>>987
新しい更新がマージされたのを契機に処理をしたいなら post-merge になりそうだけど、
リモートからコミットがfetchされてそれがマージされたのかどうかは自分で判断しないといけないんじゃないかな

997 名前:過去ログ ★ [[過去ログ]]
■ このスレッドは過去ログ倉庫に格納されています






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<316KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef