1 :
デフォルトの名無しさん :
2013/05/21(火) 11:26:36.94
____∩_∩ 〜/ ・ ・\ ( ∀ ) <ぼく、4ゲット君 \/\/\/\/
____∩_∩ 〜/ ・ ・\ ( ∀ ) <あたち、5ゲットちゃん \/\/\/\/
どこが違うんだw
すでに書いてある。URLが変わっただけ。
gif←ジフ git←ジット
cogito←コギト git←ギット
12 :
デフォルトの名無しさん :2013/05/30(木) 08:03:12.77
Q. Pull Requests、Forkなどの機能はありますか?
A. 申し訳ありません現在は実装しておりません。
作ってる本人も欲しい機能なので結構早く実装されるとおもいます。
Q. Gitサーバーにsshでアクセスすることは可能ですか?
A. 申し訳ありません現在HTTPSのみ対応しております。
開発チームがそれなりにがんばっているので、それなりな時期に対応できるとおもいます。
俺が実装してやるぜ!という奇特な方はこちらからご応募ください。
http://www.bizreach.co.jp/recruit/ ふ〜ん。
また画面丸パクリだったりするのかな
これはひどい
誰かが負荷かけて潰すだろうな
>>14 スクロールして一瞬びびった。グロ画像かと思ったじゃねーか。
CVSユーザーです。gitの場合CVSのモジュール一つにつき 一つのリポジトリを用意する必要があるという認識で良いですか?
gitを学ぶならCVSのことは全部忘れた方がいいと思うよ
いや、忘れる必要は無いだろ。技術者として。
そういう意味で言ってるんじゃないと思うぞ・・・
あんな男のことはもう忘れて俺だけを見ろ って意味か
24 :
19 :2013/06/01(土) 20:14:48.96
>>20 比較しながら違いを見ていかないと覚えられない性格でなんす。
知っているなら意地悪しないで教えていただけなせんか?
管理方針によっても変わりますが、CVSのモジュールにひとつに対して、 Gitではひとつのベアリポジトリと複数のリポジトリを作ることになると思われます
26 :
19 :2013/06/01(土) 21:08:46.73
>>25 ありがとうございます。
ベアリポジトリというのが、CVSのトランク
ただのリポジトリというのがCVSのブランチ
にあたるものですよね?
根本的に違う 入門記事とかそこらじゅうにあるんだから ちょっとは自分で調べろよ
28 :
19 :2013/06/01(土) 22:14:03.46
>>27 きちんと理解できてないかもしれませんが、入門記事は読んでます。
お手間をかけて申し訳ございませんが、どう根本的に違うのか教えていただけないでしょうか。
>>27 機能的な意味では確かに全く違うが、
運用的な側面で比較するなら妥当な気もする
根本的に違うものが比較できるかよ。 事実がどうかは別として、根本的に違うと理解してる奴に聞くことじゃない。 悪意があるようにしか思えん。
そもそもCVS流儀の使い方をするならgit使う必要ないだろ CVSが流石に古くなってきたって程度の理由ならsvnにしとけ 仕事で自分の意思でなくgitに移行することになったんなら こんなところで質問すんな 誰か犠牲者がでる
>>30 横やりだが、上のやり取りを見て一言。
俺はCVS→SVN→GITとの流れで使ってきた人間だが
>>26 の言いたいことはわかるし、
>>27 の根本的に違うという発言も理解出来る。
>>26 多分、あなたの考えで問題ない(だろう)よ。
>>19 そういうことだな。
一部だけのチェックアウトができないから未だにcvsで運用しているレポジトリがあるわ。
34 :
デフォルトの名無しさん :2013/06/01(土) 23:37:07.37
>>24 CVSはどうやって覚えたんだ?
CVSを知らなかったときのことを思い出せ。
>>34 一度覚えたら、その比較でしか覚えられないだろ?
日本人に日本語を覚えた時のように英語を覚えろと言っても無理だろ?
どうだろ 母国語以外で比較しないと意味ないな 既に英語を知ってる人が フランス語を覚える時は 英語を忘れた方が良くね?
>>36 そんなことはないだろ。
話をプログラムミング言語に移すと
Java使いがC#覚える時は大抵比較的で覚えるだろ
そうでないと非効率だ
他の言語を覚えるのはまた1から始まりじゃないからな 共通して利用できる部分は多々ある
>>37 C#は、ほとんどJavaのパクリじゃないか。
>>19 合ってる。
gitはリポジトリの一部をチェックアウトできないので、
CVSのモジュールごとにリポジトリを作る必要がある。
>>26 違う。ベアリポジトリは集中管理用のリポジトリ。
CVSのチェックアウトに一番近い概念はgitではリポジトリのクローン。
みんなが参照する中央のリポジトリがベアリポジトリ、
それをクローンして各自が作業に使うのがノンベアリポジトリ。
41 :
デフォルトの名無しさん :2013/06/05(水) 20:04:03.61
>>12 返事キター
(●●) 様
はじめまして。
株式会社ビズリーチCTOの△◎◇と申します。
この度はコードブレイクにご登録いただきまして、
誠にありがとうございます。
ご挨拶といたしまして、私たちが「コードブレイク」を始めた理由と
機能についてお話させてください。
■コードブレイクを始めた理由
私はITエンジニアなどのIT・Webエンジニアが
正当に評価されていないことに古くから疑問を持っていました。
高度な技術を持つIT・Webスペシャリストは、世界中で重宝される存在です。
しかし日本においては、必ずしもその通りではなく、評価されるべき人材が、
正当な評価とそれに見合う報酬を受け取っているとは言い切れません。
優秀なIT・Webエンジニアが
自分の市場価値を正しく把握することで、
もっともふさわしい仕事とそれに見合う報酬を受け取ってほしい。
「codebreak;(コードブレイク)」は、そんな想いから作ったサービスです。
サービス名には、IT・Webエンジニアの周りを取り巻いていた、
不必要な「規約、規則=code」を「壊す、打ち破る=break」という想いを込めています。
■コードブレイクの機能
以下略
Webエンジニアなんてプログラマーの中でも底辺じゃん
>>42 昔から「士農工商犬プログラマ」と言うように
そもそもからプログラマーが底辺なんだから、
底辺の中で上下を決めた所でしょうもない
Gitのリベースとは、SVNで言うところの 「機能ブランチの再統合マージ」のことですよね?
Gitのリベースはブランチをマージするとかじゃない場合も使える ひとつのブランチ上でコミットの順番を入れ替えるとかもリベース
コミットログの編集、削除やらも git rebase やな
リポジトリ内に既にあるものを変更するからって何でもかんでもrebaseに押し込めすぎ
コミットが何なのかを理解すれば、その何でもかんでもと思ってることが rebaseひとつで済む理由を理解できる。
で、そういうオペレーションをrebaseって言葉で表現するの?
覚えるの面倒だから全部rebaseでいい
51 :
デフォルトの名無しさん :2013/06/06(木) 16:59:54.41
だがブランチ切り替えをcheckoutにしたのは異論あり
ファイルを指定したときとブランチ名指定したときで全く違う機能持ってるのはよくないな
rebaseと比較の上で考えると全く違うってほどでもない。
54 :
デフォルトの名無しさん :2013/06/06(木) 17:29:31.17
ファイル指定の時にワークのファイル保護さえしてくれれば良い気がした。 なんであそこだけノーガードなんだろ?
いやいやcheckoutのそれはまったく違うぞw それに比べたらrebaseがやることは常に一緒。
gitのuiは飾りです。偉い人にはそれが分からんのですよ。 従来のSCMとは概念から違うのに、既存のSCMと無理矢理コマンド合せようとしたから破綻してる。
UIが内部的な処理に引き擦られてしまっているだけ ボトムアップな作り方だからそうなったというだけ
つまり、片手を鼻くそほじるためにあけるためだけのものではなく、 gitの概念をきちんと理解した上での新しい憂を作れと。
-リモートとローカルのマージ -メインブランチとトピックブランチのマージ 上記は全く違うものだと思うのですが、 皆さんは両方ともマージと呼んで混乱しないんですか?
FFマージと非FFマージとFF状態での非FF形式のマージ。 非FF状態でFF形式のマージはできない。 このぐらいしか意識してない。
61 :
デフォルトの名無しさん :2013/06/07(金) 15:48:26.96
〜と〜のマージと呼ぶ方が混乱する。 〜から〜へのマージと呼んでもらえば、何を対象にしてても同じ
VisualSVNServer的なWindows上に簡単に インストール出来るgitサーバーパッケージ って無いんですか?
repoの話題はここでいいんかな 複数のgitリポジトリを包含したrepoで、新規にtopicブランチをつくりたいです。 $ repo start topic --all みたいにするとtopicブランチは出来上がるんだけど、ブランチ元がずいぶん昔の バージョンになってしまう。 現在 $repo status とかで見えているカレントのブランチから派生させたいんだけど どうやったらよいですか?
>>59 >-リモートとローカルのマージ
gitの場合はこれが無い
存在するのはリモートと関連付けられたローカルとのマージのみ
ローカルとリモートを同期させるかは別問題
git-svnの利用に関して質問です。 Subversionの場合、よく一つのリポジトリで複数のexeやlibを 管理することが多いです。そんな場合でもgit-svnは利用できますか?
>>66 不可能だと思って聞いたんですが、「不向き」とおっしゃるということは
可能ということですか?
<追加質問>
もし、1リポジトリ=1exeが保証されているとして、
リモートリポジトリをSVNである場合の不利な点って何が有りますか?
そりゃ全部いっしょくたにすりゃ可能は可能だろw
>>65 バイナリも管理(リポジトリに登録)できるか、という意味であればできる。
>>67 中央管理だからサーバーが死んだら終わりってくらい?
>>69 バイナリ管理は出来るのは大前提であり、
1リポジトリ=1exeが守れなくてもgit-svnで運用できるかという
ことを私は聞きたかったのですが…。
>>70 ネットワーク速度的やCPU処理速度的な
デメリットは特にないということですか?
速度はハード性能を上げれば済む話 機能的な差が無いかが気になる
>>71 出来る出来ないで言えば出来る
と言っておろう
画像大量にブチ込むとかやってる人居ない?
>>74 その出来るという運用方法を教えていただけないでしょうか。
77 :
デフォルトの名無しさん :2013/06/10(月) 15:00:40.33
77
>>74 出来ないなら出来ないと認めればいいのに orz
突っ込む方も突っ込む方だが…
79 :
デフォルトの名無しさん :2013/06/10(月) 16:54:55.00
そもそも何が出来ないと思ってるか不明。不便を許容したら大抵のことは可能の範疇にはいるだろ? なんとかして運用方法を知りたいというよりも、なんとかして不可能という言質を引き出したいように見える。 git-svnはsubversionリポジトリのサブディレクトリと関連付られるんだから、製品それぞれを別のリモート名にすりゃ良いんじゃないの?
たくさんのexeファイルを含むSVNのリポジトリをgit-svnで管理できるか?ってことだよね できるんじゃないの? exeファイルの数やサイズや更新頻度によっては実用にならない可能性はあるけど それは知らんから、試してみてくれ
82 :
デフォルトの名無しさん :2013/06/19(水) 12:28:36.82 ID:QJZyPKVo!
git clone githubでクローンしたいプロジェクトのurl cloneした状態でgit logをすると 元のプロジェクトの人が貯めてきたログが残っています。 こういうのってcloneした後に.gitディレクトリを消してからgit initってしてリポジトリを作るものでしょうか? それともこのcloneしてそのままaddとかcommitをしていくべきでしょうか?
githubでクローンしたいプロジェクトを 自分のプロジェクトに fork してから git clone 自分のプロジェクトのurl
>>75 広告デザインとか、ウェブサイトのデザインで使うときには、材料を全部入れる。
Macのgitブラウザは、よく使うフォーマットの画像がプレビューできるので
画像のdiffもバイナリdiffじゃなく、プレビューで見られるので便利。
85 :
デフォルトの名無しさん :2013/06/21(金) 01:48:02.01
LinuxでGUIからgit使うのにお勧めツールないでしょうか redmineみたいな感じでチケット管理もできると最高なのですが
まるでWindowsにならあるような書き方ですが もちろんWindows版にもありません。
Windowsの方はVisualStudioがgitのネイティブサポートを始めたよね。まだβっぽいけど。
チケット管理が無いとダメなら giteyeとかsoucetreeみたいな普通のクライアントじゃ無理なんじゃ?
コマンドラインで使うのが一番便利だと思うのだけどなあ。
全体をだらだら眺めるような時はtigとか使うのも便利だと思うよ
tig試しに使って見たことはあるのだけど、結局、logformatに%dの出力足せばすむ話だし。 差分もvim -R -食わせちゃった方がなれていることもあって不便はかんじないんだよなぁ そもそも、git guiとかgtk一応はいってるてのもある。 Xming知ってから世界はかわった(笑) コンフリクトした時、meld使うくらい? ってことで、rebaseできるものでもなければguiあんま必要ない。 っていうか、rebaseのできるguiってありそうでないよね。
SourceTreeは普通のrebaseもインタラクティブrebaseもできる それだけでは細かくコミット編集するのにはまだ不便だが 普通に使うのには十分だと思う
おお、それは朗報。後で少し調べてみよう。 rebaseって、tagやbranchため込んでると手間が増えて手でやるの面倒だったんだ。 branchからbranchつくってるやつとか。 それとも、tagはpushする直前につけて、branchはmergeしたあとはすぐ削除したほうがいいのかな?
94 :
デフォルトの名無しさん :2013/06/26(水) 04:02:08.36
$git --init $touch ticket.org でemacs使った簡易Redmineもどきできるな
95 :
デフォルトの名無しさん :2013/06/27(木) 14:52:50.50
gitweb ってブランチの表示機能が無いのか〜 結構良いデキなのに、惜しいなぁ
複数のbranchがあるリポジトリで、リモートのすべてのbranchの変更点をローカルに反映 させたい場合、checkout/pullを全branchについて実行するより簡単な方法ってありますか?
ブランチ未指定でプルプルすればいいんじゃないの?
すいません、プルプルってなんです?
100 :
デフォルトの名無しさん :2013/07/03(水) 13:34:28.85
なんかgithubおもくね?
101 :
デフォルトの名無しさん :2013/07/05(金) 12:41:49.72
102 :
デフォルトの名無しさん :2013/07/09(火) 10:50:38.92
あるタグとあるタグの差分をファイル名一覧だけ表示したい
>>101 プライベートリポジトリでも運営は閲覧できるというクソみたいな規約や
職種・年収記入が必須とか
退会手続きはフォームから記入とか
今は直ったらしいけど、いろいろアレすぎて触れられねーよ
>>103 >プライベートリポジトリでも運営は閲覧できるというクソみたいな規約や
これはキモイ
>>103 年収記入はネタだろ
あれは大いにウケタ
商品(奴隷)のカタログなので価格は必須
みんなGitで使うディレクトリはまとめてる?
まとめるという、意味が分からん
自分は work-git というフォルダ以下に置いてたりするけどそういうことじやないかな。 work は subversion リポジトリとして使ってた。
>>107 共有は/var/vcsに、workは~/usrにだいたいのプロジェクトを入れている。あと別ホストにバックアップであげてるな。
3箇所だからまとめてないっとことだな。
>>107 Gitというよりそういう系は~/proj以下に置いていて、そんなかで適当に種類別に分けてる。
て、Git関係ないけど
112 :
片山博文MZパンク ◆0lBZNi.Q7evd :2013/07/14(日) 00:50:04.61
sjisのソースをgithubに登録したらまずいっすか?
家でGitの練習したいんだけど どこかに手軽にcloneできるリポジトリーみたいなのないかな
githubにいくらでもあるじゃないですか〜
練習ならローカルに自分で作ったbare repositoryをcloneすればいいんじゃない? push/pullは自由だし、すぐ消せるし
GUIはTortoiseGitしか無いし、それで十分と思ってきたけど、 SourceTreeがGitに対応して、なかなか使える感じになってきたね。 ちょっともっさり気味だが。
Eclipseのプラグインがオススメ
SourceTreeはsquash mergeができないのが厳しい。一応追加機能の要望は出てるみたいだけどね。
まぁ細かい作業はターミナルでやればええやん GUIとしてはグラフも十分見やすいしあれはあれでいいや。
おれも、SourceTree はグラフやdiff を見るためのツールとして使っている。 何らかの変更処理は、コマンドラインでやっている。
125 :
デフォルトの名無しさん :2013/07/20(土) 12:24:52.10
現状は、CLIとGUIで使い分けだな
126 :
デフォルトの名無しさん :2013/07/20(土) 16:31:29.02
git clone ssh:192.168.0.1/tmp/Depot/XXXXX.gitが、 ホストサーバーのLinuxの中だとつながるのに Windowsからだとつながりません cygwinもmsysgitもsshでシェルにはログインできるけど git コマンドはパスワードがPermission deniedで弾かれちゃいます なぜでしょう?
ユーザ名は?
128 :
デフォルトの名無しさん :2013/07/20(土) 18:20:20.40
すみません。ユーザー名がXXXXとすると
[email protected] 's Passwordって聞かれるので
どこかで勝手に認識してるのかな?と思ってるんですが...
と思ったらユーザー名ってWindowsのログオンユーザー名が使われるのかな?微妙に大文字小文字がLinux側と違うけどこれが原因?
git のログインアカウントって指定できるんでしょうか?
130 :
デフォルトの名無しさん :2013/07/20(土) 18:41:28.22
あーーーーーりがとうございましたーー うまく行きましたーーー
スイス銀行のいつもの口座へ3日以内に振り込んでくれ
133 :
デフォルトの名無しさん :2013/07/21(日) 00:56:16.22
1500円ぐらい、おまけしてやれよ
振り込み手数料のが高い
135 :
デフォルトの名無しさん :2013/07/21(日) 10:32:18.84
GUIができるようになるまでGitは使わない
プログラマーだけがプロジェクトに関わってるなら今すぐGitにするわw
139 :
デフォルトの名無しさん :2013/08/01(木) 17:31:13.65
2chもGit化するか?
GUIだと簡単という幻想。
今の時代企画やデザイナーさんにコマンドラインおぼえろとか言っても無理でしょ…
>>138 あー、全く同意。もちろん個人ではgit使いまくり。楽しくて仕方ない。
GUIにしたところで、いちいちどうやるのか聞いてくる。GUIは教えづらいし、こっちがGUIも覚えなきゃいけない。
コマンドラインはコマンドライン状態にする前提とかがあるから面倒なんだよ。GUIのが遥かに教えやすい。 覚えなきゃいけないとか言ってるのは、プログラマーとしてどうなのよと思うわ。
145 :
デフォルトの名無しさん :2013/08/01(木) 19:04:46.04
ええっ!?
プログラマじゃない人にとってって意味でしょ
147 :
デフォルトの名無しさん :2013/08/01(木) 19:31:15.23
プログラマーとしてどうなのよ
底辺にはsourcetreeのguiで見える程度の機能で余る。 コマンドラインでしか触れない機能は選民だけが使えばいい。 それほどgitは便利。
CLIで出来ることでも、左手でおにぎり食べながら作業するときは GUIでやった方が効率はあがる。 つまりそういうこと。
>>144 コマンドライン状態って何?
遠隔地に居る人にGUIで指示するしてる人が、もっと右、丸に毛の生えたアイコンの…とか言っているの聞いてると笑いそうになる。CUIならコピーしてメールで送れる。GUIだといろんなソフトあるし、具体的な操作方法は調べないといけない。
君はそのソフトに触らなくてもどう操作すればいいのか、わかるのか?
だから、そもそもLinuxコマンドラインだけでやってる職場がどんだけあるんだっての。 GUIの操作方法なんて「調べる」ってほどのものかよ。
そりゃ調べなきゃいかんだろ バージョンがちょっと違ったら別の画面見て話してたなんてことが しょっちゅう起きるのに
いったん会社で導入して、バージョンが変わったからと言ってプログラマーがいちいち説明することなんてないだろ。 メジャーなTortoiseSVNなんかでもそうだろ。たかがバージョン管理ソフトでそんな大袈裟なことはない。
一応正確に言っておくと、SVNとクライアントソフトとしてのTortoiseSVNの組み合わせって意味な。
たかがバージョン管理にコマンドや仕様を覚えさせられるのは迷惑だろ
秘書に頼めば余裕だしな
GUIだと、仕様とやる事とボタンの位置を覚えなきゃいけないと言う。
なんだそりゃ。それが大変なことだとは思わないが、プログラマ以外に納得させなきゃ導入できんぞ。
159 :
デフォルトの名無しさん :2013/08/02(金) 08:39:40.33
GUIだと、自動化が面倒くさいと思う。
Gitはたかがバージョン管理ツールではない これは編集過程を柔軟に管理するツール わたしにとってはエディタやIDEと同じぐらい重要 GUIはGitを従来のバージョン管理ツールの枠に押し込めてしまうようなものしか存在しないから 現時点ではコマンドラインで使わないとその真価は発揮できない
161 :
デフォルトの名無しさん :2013/08/02(金) 09:11:09.36
>>160 >GUIはGitを従来のバージョン管理ツールの枠に押し込めてしまうようなものしか存在しないから
Git for Windows は使ってみたことある?
>>161 Interactive rebaseに対するGUIが整備されてるなら試してみようと思うんだけど
どんな感じ?
日常のルーチン化した部分はワンタッチでポンと出来て そうでない部分はこまごまとコマンドラインで作業して という住み分けが出来るならGUI使いたい
diffとかmergeとかはGUIを使ってやりたいね。 特にコンフリクトした場合の対応とか。 ネットに普通に転がってるのだと ふわふわした説明で競合を解決してと書いてあるようなのが多い。 mergetoolコマンド使って外部のGUIプログラムを使ってどうこうするとか いうのを書いてあるのはほとんど無いよね。 あとは、ログのツリーはGUIで見れたほうが分かりやすいとは思う。
165 :
デフォルトの名無しさん :2013/08/02(金) 11:52:27.27
WinMergeってどうなの?使える?
>>165 gitからWinmergeは使える。
Winmergeからgitは使えない。
せっかく来たのに まだ決定打的なGUI出来てないの また明日こよ
いやいや、
>>167 が決定打的なGUIをひっさげて明日再びやってくるって意味だろう
昔VSSとか使ってたくらいで、オライリーのGit本読んで 使い始めたけど、これカーネル開発を世界規模で共同開発するとかには 確かに必須の物なんだろうけど、 例えば10人くらいの同じ部屋にいるプロジェクトで使うには 機能過剰な気もするな。 あと使い手を凄く選ぶ(難しい)と思う。 単純なチェックイン・チェックアウト型の排他管理も要件を満たすなら良いと思うな Gitにもファイルの排他編集機能とか有ったらいい気がするんだけど
そういう用途なら素直にsubversion使ったほうがいいと思う 分散型はfile lockは事実上不可能だし意味が無い
ログ見るのとhunk単位ステージングだけはGUIかなにかあったほうが楽だな pullやmergeやrebaseだとコマンドラインのほうが細かいとこに手が届く
>>170 >あと使い手を凄く選ぶ(難しい)と思う。
チームに新人が来る度にBTSの使い方も含めて分散型VCS(会社はMercurialなんだけどね)を
使った開発のイテレーションの回し方を一通り指導するけれども、特に困難は無いなぁ。
個人的経験の範囲だけど使い手は選ばないと思う。ちゃんと学べば誰でも普通に使える。
単に分散VCSの使い方を教えるだけではダメで、トピックブランチを切って手元のリポジトリ
でこまめにコミットやマージをする開発スタイルとセットで教えないと御利益は伝わりにくい。
>例えば10人くらいの同じ部屋にいるプロジェクトで使う
今のプロジェクトの最小単位はそんな規模だけど、普通に便利。
上司が明日からSubversionにしますとか言い出したら普通に暴動が起きると思う。
>>174 ドックフードを食べるという訳じゃないが、チュートリアルプロジェクトみたいので
回すのは結構いいかもね。 頭の中身をテキストに落としただけで実際に机上で
すら回したことのないライブラリ管理を押し付けるのは止めてくださいという
プロジェクトは多いからね。
難しいと言ってる香具師は選ばれたんだよ あきらめろ
底辺web土方が一番使ってる気がする。 全般的に頭が悪いので高度な機能?は使わないから こんなにわかりやすくて便利なものはない
Gitみたいな分散型VCSを使わないのは 高機能エディタやIDEを使わずにメモ帳でプログラムするみたいなもんだ
ちょっと視点を変えると、分散型のVCSを使っていなかった時代はファイルの更新履歴の 管理はIDE等が持つUndoやローカル編集履歴機能に頼る比率がより大きかった気がする。 そういうのは更新内容のコメントが残らないしチームで共有もされない。 コミットの相手はローカルだしブランチを切るのも手軽なのでとにかくコミットが気軽。 記録に残るコメント付きコミットの頻度がサーバー上のtrunkをみんなで突っつくよりも 格段に向上するだけでも分散VCSを使う価値はあると思う。
コマンドでたいていのことはできるんだけど 履歴みたり差分みたりするのはツールがないと不便 なんか中途半端なんだよな
馬鹿には無理
馬鹿にもソース管理できるようにするツールだろ
cui派だけどtigはあった方がいい
正直、Winしか使って無い人にLinuxCUIを教えるくらい難しい。そこがネック。
svnの時はコミットするのに慎重になっていたが、gitだとバシバシできて良い。
Gif ジフ Git ギット (´Д`)?
Gimp ギ・・・ジン・・・ギンプ(小声)
コピペ失敗したときに不安のストレス与えて可哀想だろ
cogito ergo sum コギト!
>>189 コピペしてもエンターする前に見直せるけど、ミスクリックは見直せないね。
githubが無くても、git使ってた? サービスたち上げること考えたら、割と他のVCSの方が使いやすくパッケージングされてるように感じた。
特定のディレクトリ以下のファイルを自動でリポジトリに追加することってできませんか?
シェルスクリプトを定期的に動かせばいいんじゃないの?
gitのメリットがいまいちわかりません。 一人でテストケース書かない俺でも使うメリットありますでしょうか。 コードはPHP。 今はdropboxを使って、古いコードに戻してます。 教えてください。
メリット: 将来集団での開発に参加したときに恥をかかない。昔svnは今はgitも一般教養。 DropBoxはファイル単位での履歴しか持っていないけれども、gitというか一般論と してバージョン管理システムはプロジェクト全体のスナップショットの履歴を持つ。 プロジェクト全体を何週間前に動いた状態とかにコマンド一発で巻き戻せる。 (もちろん個別ファイルの巻き戻しも可能) 便利かどうかは別としてVCSを使ったバージョン管理というのはそういうものだから 慣れていて損はない。 単にファイルを巻き戻すだけではなく古いファイルと内容を比較するといった操作 が用意されている。DropBoxだとこれは面倒臭いでしょ。 git的な事情としてブランチベースの開発がし易い。何か新しい機能追加をする場合 はブランチという派生バージョンを作って、そちらを書き換えて、上手く動いたら メインブランチに変更内容をマージして書き戻すというサイクルを細かく繰り返す。 個人利用であっても複数の開発トピックが同時進行する場合は便利。 そしてブランチベースの開発も一般教養になりつつあるから知らないと恥ずかしい。
たかがGit位、知らない奴がいたら教えてやれば済むことだと思うんだけど Git知らなきゃ恥って思ってる人たちはメディアで饒舌な人たちに 踊らされ過ぎなんじゃ無いだろうかと... Git知ってるからといってそれにいかほどの価値があるというのだろうか
「(他のを使っているから)Gitを知らない」ならともかくとして 「プログラマーなのにバージョン管理の利点自体を知らない」レベルだと普通に恥ずかしいし、知らない事が恥に値する程の価値は十分有るでしょ
どうだろう、例えば独学で凄い3Dグラフィックエンジン作ってた様な人が 仮にバージョン管理システムの存在をこれまで知らなかったとしても いくらもその人の価値を落とすようなことは無いと思うんだよね 業務でプログラムしてました、これまでバージョン管理とか使ったことありません みたいな事を想定して恥だと言ってるんだと思うんだけど 個人的に思うのは、世の中で知る価値のある技術的なトピックというのは ひとりの人間が一生かけても取得出来ない数があるのは明らかで こう言うなんというか、自分の知ってる10のうちから謎々を出してしか 人の価値を計れないと、自分より優れた人の価値は絶対に計れないだろうなぁと
Gitを知っている事に価値があるかはともかく、Gitの類を使った開発に参加する際に Gitの使い方を知らなければその人は当面無価値だよね。参加できないのだから。 受け入れる側が懇切丁寧親切に教えてくれるラッキーなケースもあるだろうけど、 そういう受け入れる側にしても新しいメンバーに予め期待する予備知識は年と共に どんどん変化するわけで。 知らんことが出てきたら人に教えてもらう一方で裏では恥ずかしいと危機感持って 自分で学んでキャッチアップするぐらいでないと色々大変だと思う。
俺なら git 知ってるとどや顔してる奴より、git のマニュアル渡したら人に聞きながらでも、それなりに使える奴を選ぶわ。
どうしてもgitを理解できなくて悔しいんだろうな 有用なプログラムを作れるようなレベルの人はgit程度簡単に使いこなせる
> どうしてもgitを理解できなくて悔しいんだろうな 誰のことだろう... 仮想敵作って、一人相撲が趣味なのか?
ドヤ顔していようが素直な顔していようが関係無いけどね。 ドヤ顔していたところで抜けている事柄に関しては必ずボロが出るし。 ただボロが出た後で抜けをどう埋めるかの姿勢の差はでかいと思うけど。 自学するドヤ顔と指示待ち素直、どちらを選ぶ?
おまえらそんなに他人に教えるのイヤか?w 使い方くらい教えてやれよ、性格悪いな。
ここにいるみなさんはテストケースも書かれてるんでしょうか? 皆さんきっちりしてそう。
まあ、VCSの知識は運転免許証みたいなものだ。 みんなが車を走らせる公道に出てくる際は必ず持ち合わせるべきもの。 そしてとるのも難しくない、教習所でちゃんと学べば基本的に誰でもとれる。 ただ最近は道交法の改正で分散型という仕組みが出来たので多少混乱はあるらしい。 就職してからの免許証取得も可能だろうけれども出来れば就職前の取得が望ましい。 運転免許証を持っていてもペーパーだと仕事で必要になった時に困るよね。
VCS の知識ぐらい持ってて当たり前だが、会社によって使ってる VCS 違うんだから、就職前に取得とか言われてもなぁ。 そもそも ClearCase なんて個人じゃ買えないしな (w
それは就職後にどんな車を仕事用に割り振りられるか解らないから、就職前に免許を取って 適当な車を乗り回すのは無駄だと言う程度には不思議な理屈だなぁ。 応用が利かないので車を乗り換える度にイチから運転方法を覚え直す人ならともかく、普通は 別の車であっても運転経験があれば新しい車もあまり時間をかけずに乗りこなせると思うけど。 仮に仕事の現場で特殊車両に乗る人でも関連作業で普通の車を運転する機会も多いでしょ。
っていうかバージョン管理ってそんなに難しいか? いやGitの機能が奥深いのは分かるけど、普通に使うのに十分なレベルなら 自習でも一週間もかからないだろうし、業務なら簡単なチュートリアル 読んで貰うくらいで十分だろ?間違ってる? 知ってるとか知らないって事が、そんなに問題になるとは思えないんだけど
とかいいながら1ヶ月かかっても使えない
>>213 なのであった
>>212 事前に特定の車両の免許を取れと言ってる奴に言ってやれよ
> Gitの類を使った開発に参加する際にGitの使い方を知らなければその人は当面無価値だよね。
>>213 何か嫌なことでもあったんだろ。
>>215 べつにそれは特定の車両を使っている現場ではその車両を運転できないと無価値だと
言っているだけであって、別にだからその特定の車両の免許を事前に取れと言って
いる訳では無いでしょ。
gitでもhgでもsvnでも、何でも良いから事前にVCSを使った開発経験を持っていれば
仮に他所で他のVCSを使っていても教える方も教わる方も双方共に楽が出来る。
そしてその中から何を選ぶかと問われれば、昔svn今ならgitはリーズナブルな選択
だと思うけれどもね。現場で使う頻度云々もあるけれども、今は公開リポジトリを
利用するのにもこの二つは広く使われるなど応用も広いと思うのだけど。
バージョン管理システム自体は簡単でもバージョン管理そのものはプロジェクト管理と 関連するから単純な作業じゃないよね。
>>216 >その特定の車両の免許を事前に取れと言っている訳では無いでしょ。
>> Gitの使い方を知らなければその人は当面無価値だよね。
君は、Git の前に日本語覚えるべき
>>218 日本語以前の問題で、理屈をちゃんと踏まえる習慣をつけないとプログラミングの
世界では不味いと思うよ。
「無価値だよね」から「特定の車両の免許を取れ」と勝手読みするのに至るまで
いくつの理屈をすっ飛ばしたのかな。
>>210 例えがうまいな
ただ、自転車で十分!!とかいって道路走って信号無視してる奴が迷惑なんだよ!!w
>>220 あと基本的な運転技術自体は座学や教習所内の運転コースで学べるのだけれども、実際に
公道で周囲の車の流れにのって運転するには隣に指導員が乗った路上講習や免許取得後に
実際に他の車の集団が走っている中を運転して場数を踏まないことには如何ともし難い
のもどことなく似ている。
>>196 行ごとにいつ、どうして変更したかわかるようになるよ。
>>198 今まで教えてすぐ使いこなせた奴はいなかったな。やはり習熟が必要。
>>219 git の知識が無いのは無価値 ⇔ 無免許
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
特定の VCS (git) について知識を得とけ ⇔ 特定の免許を取っとけ
引っ込みつかなくなっているだけならまだしも、マジでこれぐらいの論理が組み立てられないと、この業界だと辛くないか? (w
>>223 横方向のアナロジーは解らないでもないし、一生懸命視覚化しようとした努力は
買うけど。
> git の知識が無いのは無価値 -> 特定の VCS (git) について知識を得とけ
誰も書いていないじゃん。「Gitの類を使った開発に参加する際にGitの使い方を
知らなければ」という自分で引用した仮定すらすっ飛ばしているし。
0点。
>>224 そんなレスしてて楽しいの?
傍から見ると、可哀想にしか見えないんだけど。
>>192 > サービスたち上げること考えたら、割と他のVCSの方が使いやすくパッケージングされてるように感じた。
ネット越しでも共有フォルダ使うならなんもいらないし、
httpでもapacheにgit-http-backendのリンクを食わせるだけで
超お手軽だろ?
Githubのスレが見当たらないんですけど、Githubの質問はスレ違いなんでしょうか。 あるプロジェクトを自分のリポジトリにフォークして、自分のフォークリポジトリに少しずつチマチマとコメントつけてコミットしてるんですが、 それを元のリポジトリに、毎回のコメントごとコミットってできるんでしょうか? つまり、 コミット "初回" コミット "2回目。○○を直しました。" コミット "3回目。■■を直しました。" とフォークしたリポジトリにコミットしたのを元のリポジトリに コミット "フォークからのコミットです" とまとめてコミットではなくて コミット "フォークからのコミットです。初回" コミット "フォークからのコミットです。2回目。○○を直しました。" コミット "フォークからのコミットです。3回目。■■を直しました。" としたいんですが
Githubの質問じゃないし
gitって有料ばかりだけど皆有料プラン使ってるの? フリーでコードを公開ってのもあれだけど、有料プランの出費もいたいなぁ。
>>230 ありがとうございます。
無料だとコードを晒さないといけませんよね?
俺の作ったコードなんて誰も触らないでしょうけど。
俺もコード晒さずにただで使ってるよ。git。
>>231 まず、git とgithubは異なるものね
で、github について言えば、無料なら晒さなければならないのはその通り
それが嫌なのであれば、git+dropbox とか、bitbucket とか代替案はいろいろとあるよ
gitとgithubを勘違いしてないか
232,233,234 ありがとうございます。 同じものだと思ってました。 ググってみます!
>どうだろう、例えば独学で凄い3Dグラフィックエンジン作ってた様な人が >仮にバージョン管理システムの存在をこれまで知らなかったとしても >いくらもその人の価値を落とすようなことは無いと思うんだよね 言ってることは理解出来るが 一緒に仕事したくないタイプ
238 :
デフォルトの名無しさん :2013/08/12(月) 15:36:49.05
どうぞどうぞ
lolcommits 約 3,370 件 (0.23 秒) 使ってないでいいんじゃね? わざわざこれがなにか調べる気も しないけど
せっかく来たのに まだ決定打的なGUI出来てないの また明日こよ
永遠に明日を待ち続けるのであった
無いなら俺が作ると考えない奴に明日はかおない
かおないパワー!
gitconfigでaliasに log = log --date〜 みたいな感じで書いたんですが デフォルトのlogで表示されます l = log --date〜 って書くと反映されました aliasでlogが反映されないのはなぜですか?
>>248 仕様です
> To avoid confusion and troubles with script usage, aliases that hide existing Git commands are ignored.
そうだったんですか! わかりました!
間違えてIDとパスワードを含んだコードを間違えてあげてしまったので、 至急ローカルでコードからIDとパスワードを削除して git add -A git commit -m "IDとパスワードを消した" git push origin master ってしたんですが githubの履歴にはIDとパスワードが入ってるコードが閲覧できてしまいますよね こういう場合はどうしたらいいでしょうか? やり方がわからずリポジトリごと消してるので一応被害はありません
testブランチを切り替えるのを忘れてしまい、masterブランチでコードを編集してしまったのですが この場合、. 編集したファイルを別のディレクトリにバックアップ ↓ git checkout -fで元に戻す ↓ git checkout -b testでtestブランチに切り替える ↓ バックアップしたファイルで元のファイルを上書き という流れで解決はしたのですが、ものすごい面倒くさいです 以下の3つの状態それぞれのケースでもっとよい方法がございましたらどうか伝授してください 1.git addする前 2.git addした後 3.git commitした後
commit --amend push --force
commit 前なら git stash save; git checkout xxx; git stash pop で大体おk。 commit してしまったら git reset HEAD^ でひとつ戻ってから同様にやればいい・・・と思う。 たぶん。 きっと。 おそらく。
1.2. stash -> checkout test -> stash pop
githubで自分のリポジトリでpull requestを送る練習をしてるんですが branchはmasterじゃないほうがいいということなんですが branch名は他の人とかぶらない様なネーミングをつけておいたほうがいいですか? もし他の人とbranch名がかぶったらコンフリクトになっちゃいますよね?
ブランチ名はリポジトリローカルなので、被ってもOK 自分のリモートとローカルでも別の名前使えるよ ただ自動で生成されるコミットメッセージに出てきて紛らわしいので、意味のある名前が推奨されてる
>>256 自分のリポジトリにpushして自分にpull requestするならブランチ名は重なってちゃまずいと思うけど
forkしたリポジトリにpushしてオリジナルのリポジトリにpull requestするなら、
ブランチ名の重複は考えなくていいんじゃないの?
259 :
251 :2013/08/30(金) 21:09:59.03
自分で判断したまえ
まあ、問題のない世代からブランチを作り直してmasterを別のものにするしかないと思う。 編集履歴なくってしまったら、バージョン管理にならなしね。 pullしている人には事前の連絡を忘れずに
おいおい。消す方法あるぞ。ちょっと待ってろ。
stashという便利なコマンドがあるんですね!勉強になりました
>>251 こういうのってどうやって管理するのがいいの?
gitでコミットするファイル内では別ファイルを読み込む形にして、その別ファイルは.gitignoreに追加するのとかいいかなと思うんやけど。。
oauthライブラリ作ってて同じことやったことある
password.yml はリポジトリに入れない。 間違ってコミットしないように、.gitignoreに指定しておく。 代わりにpassword.yml.sample をリポジトリに入れる。
コミットをするタイミングがわかりません やっぱり仕事でやるならコミットもきれいにしないといけないのでしょうか? ちょっと更新したらコミットとかやめるべきですか?
>>269 細かい更新でコミットするのは問題ない
むしろやった方がいい。
コミットは単なるファイルセーブじゃないんで、
コミット=アプリが正しく動く状態にしないといけない。
でかい機能追加であっても、正しく動く状態を保ちつつ
小さい修正を繰り返して開発できるはず。
その小さい修正ごとにコミットする。
リモートリポジトリに送信しない限り
歴史は自由に書き換え可能なのだから
最終的にバグやミスがないコミットの連続になる。
これを開発用のブランチで行う。
最終的にmasterにマージするときに
一つのコミットにまとめるかどうかは方針次第。
俺は動かない状態でも一時的な作業用のブランチ作ってコミットするのはよくやる (workとか、それとわかりやすい名前がいい) 動く状態になったらちゃんとしたブランチに merge --squash して作業ブランチ削除、みたいな感じ
履歴に残さない一時的なコミットなら どうでもいいよ。
273 :
デフォルトの名無しさん :2013/08/31(土) 13:27:27.17
全プッシュ! 全プッシュ!
へ?git push 以外になんか引数必要だっけ?へ?
git push するときに up streamだかなんかってエラーがでたんですけど どういうことかわかりません
>>275 たぶん、現在のブランチがリモートブランチと紐づいてなくて、どこにプッシュすればいいのかわからんのです
git push origin master
みたいに指定すればプッシュできませんか?
たぶんそれかもしれません やってみます
githubで複数のpull requestをtestブランチで送られてきた場合どうすればいいんですか!? そのままマージボタンを1個ずつおしちゃっていいのですか!?コンフリクトしますよね? それともひとつローカルに映して手作業でコミットとプッシュを繰り返すのでしょうか!? これが怖くてpull request全部無視
先着順にマージして、コンフリクトするようなら 送り主にそっちでrebaseし直してくださいやがれって言えばいい
どんな状況であれローカルでpull・mergeすれば結果はいかようにでもできるはずだが
GitHubで非公開リポジトリを作った場合に その中に作られるWikiも非公開になるんでしょうか?
.git のあるディレクトリごとzipで圧縮したファイルを 電子メールでやりとりすれば githubいらないな
.git のあるディレクトリごとzipで圧縮したファイルを 電子メールでやりとりのが大変すぎるから github必要だな
.gitで管理しているディレクトリがA君とB君で違うとダメなきがするんですけど
そもそも分散リポジトリの意味がないきがするんですけど
A君とB君はそれぞれローカルリポジトリを持ってそこで作業する 修正を相手に送りたいときはローカルリポジトリのコピーをメールで送る メールで送られてきたリポジトリは自分のローカルリポジトリとは別の 場所に展開して、そのリポジトリからpullして相手のコミットを取り込む これならおk?
なぜパッチセットでもバンドルでもなくリポジトリ全部を送るのよ
リポジトリ全部を送る話をしてるからだよwくうきよめw
作業中のファイルがあるディレクトリを丸ごとzipで圧縮して 外付けHDDかなんかに貯めていけば gitもいらないな
>>286 俺が前にこのすれで質問したことあるけど
リポジトリを別のフォルダに移動したいとき、そのまま移動したらおかしくなったよ
だからむり
>>286 みたいなアホな使い方でもGitの効果は絶大だぞ
作業ディレクトリを丸ごとZipで溜めていくなんかとは全然違う
GitってPythonでできてるんですよね 何でPythonインストールしてないのに動くんでしょうか?
>>290 普通にできる。前スレ670でリポジトリの移動がうまくいかないとか言ってたやつか?
お前のやり方がマズイだけという結論になっただろ。
>>292 GitはC言語。一部Perlとかのスクリプトも使ってるけど。
>>282 git自体に差分をメールにする機能があるのに。
あと圧縮は本質でなくて、アーカイブな。
あと.git以下か、bearだけていいだろ。
git daemon立ち上げるという選択肢はどうですか
>>289 それはただの簡易バックアップ、バージョン管理じゃない。
gitの使い方覚えるつもりない人とgit使うためには
ディレクトリまるごとコピーして
>>282 みたいにすればいい
githubに公開する部分と 公開できない部分を 非公開フォルダー/公開フォルダー みたいに分割すると落だけど 間違って非公開のを公開してしまいそうで 非公開フォルダー かなり違う場所/公開フォルダー にしてる
SVNほのうが簡単、わかりやすい
svnでgitと同じように運用しようとすると難しすぎる。使いこなすとsvnには戻れない。
>>303 SVNが分かりやすいと言ってSVNを使い続けるのもアリだけど、最終的にはGitがSVNよりも優れていることに気付いて「何でもっと早くGitを理解しなかったんだろう」と後悔することになる…かもしれない。
こういう違いがあるんだくらいはGitの事、分かってあげてほしいな。
優れているかどうかなんて、使い方次第じゃね? Gitなりの使い方しないなら意味ないし。
git-svnで満足
うむ。結局の所、両方知ってない奴はカス。
>>305 gitは分散型というのが最大の長所だけど
運用形態によっては最大の短所になり得る
>>309 分散型であることが短所になるって具体的にはどういう場合にどういう所がそうなるの?
>>310 ,312
横レスだけど、コミット権の制御ができなくてpushのときにrejectするしかないってのが一つ思いついた
分散型の最大の欠点は、ユーザーアクセス権限の制御が不能なところ。 誰でも触れるし、ロックも出来ない。 だから今は複数のツールを同時に使っていくしかない。
githubとか使ったことない人なのかな…
共有型の最大の欠点はロック出来ない事じゃね? いわゆるオフィス系ドキュメントを分散型で共有管理しようとすると、先祖帰り問題が発生してしまう可能性が高い
×共有型 ○分散型
分散型とかどうでもいいよ。 gitの利点はそういうところじゃない。 コミット忘れを修正することが出来るのがメリットだ。 もちろんコミット忘れだけじゃない。 あの時ああいう順番で修正すればよかったとか コミットしてしまった後で後悔することの多くをgitなら直すことが可能。
319 :
デフォルトの名無しさん :2013/09/11(水) 21:05:39.78
オフィスのドキュメントのよーなバイナリ形式で扱うのが間違い マークダウン記法みたいなテキスト形式の記法を使えばマージできるからロックとか要らないでしょ
リポジトリに大量にデータが追加されてて、全部ダウンロードすると時間かかるので 特定のディレクトリに入ってるファイルとディレクトリだけ取得したいんですがいい方法ないですか? sparsecheckoutはNGです
>>320 MS-OFFICEファイルのdiffだけだったら、TortoiseのDiff-Scriptsでも使えば
綺麗に表示できるよ。
マージができない大欠点はどうにもならないけど。
>>321 特定のディレクトリを指定して clone するのは無理だと思うが
特定のブランチだけをフェッチする操作ならできる。
>>320 のはコメントを読んだ方がいいよ
いや別に何もよくはならないけど
>>319 > オフィスのドキュメントのよーなバイナリ形式で扱うのが間違い
働いたことないんだろうな...
文章はTeXにしている俺に死角は無かった
327 :
デフォルトの名無しさん :2013/09/11(水) 23:32:45.56
オープンソースプロジェクトでdocとかodtそのまま突っ込んでいるのは見た事ないぜ
それ以上にTeX突っ込んでいるの見た事ないぜ
時代はmd
>>318 >コミットしてしまった後で後悔することの多くをgitなら直すことが可能
そこは利点ではなく欠点だろう。
>>331 何が欠点なの?
お前はミスをしないというのか?
変なことを言うやつだな。
なぜgitが歴史を変更できる手段を持っているのか
その理由を考えたことはあるのか?
>>332 そういうのを手元でやってるうちはいいけどな
ローカルと同じ感覚でやられると非常に迷惑
パスワードを書いたファイルをコミットしちゃった、、とかかw
>>333 こういうやり取り見てると、まだ SVN でいいや...
と、思う。
>>333 ローカルとリモートの区別があるから、
そういうことをローカルに手元でできるのがいいんじゃない
337 :
デフォルトの名無しさん :2013/09/12(木) 08:38:16.74
>>336 普通に考えて、push済みのcommitに対してやらかしてはまるバカがいるってことでしょ。
そういう奴は、なんでやっちゃダメなのか理解できてないんだろうし。
push済みのコミットを上書きさせないようにすることもできるし、 push自体をできなくしてpull request使うとかすればいい
githubからパスワードが書かれたファイルを履歴を含めて完全に抹消する方法を至急おしえてkづあしあ! 急いでます
首吊れば完全末梢できるよ
>>340 Githubに上げたパスワード削除
でググレ
gitを使う上で起こりうるトラブルを全部おしえて
>>343 gitを使う上で起こりうるトラブル
でググレ
>>316 ロックさせたければ VSS をつかえって感じだが、
それはともかく、ロックしたければ subversion だと svn lock があるが、
git にはそういうのないんだっけ?
誰か一人がpushするようにする ほかの人はその人にpullリクエストを送ってマージしてもらう
>>346 A君はdatabase.phpを編集するといっても自分の好きにデタラメ編集してもいいってわけじゃないだろ?
バグを作りこめは当然修正する必要がある
A君が自分のdatabase.phpにバグを作りこむのも、自分の担当じゃないview.phpを編集してしまうのも、一緒だろ?
履歴が残るんだからもしA君がview.phpを編集したコミットがあったら、それをrevertさせればいい
Gitにファイルロックとか追加されても激しく面倒というかまともに機能しないだろうから どうしても必要な奴らはプロジェクト管理ツールのレベルでそういう機能を用意すればいいだろう
分散型の思想とかそんな高尚な観点から来てるわけじゃなく、author管理と リポジトリのアクセス権限管理を別にしてしまってるところからして無理。
>>340 履歴上のファイル削除ならフィルタ掛けて一括削除みたいば事で出来るって本に書いてあったな。
354 :
デフォルトの名無しさん :2013/09/12(木) 18:42:32.66
Mercurialにはクライアント側でファイルアクセスを禁止する ロックの拡張機能があったけど 使い物になるのかどうか
355 :
デフォルトの名無しさん :2013/09/12(木) 20:36:42.01
>>351 が正解
どんなにロックしても、gitに慣れた者ならばローカルにcloneしてpushする瞬間だけロックを取得するような使い方をするようになるだろうから意味ない。
例えばVSSの場合だったら、ロック中のファイルを編集するために別のフォルダに退避して、ロックが外れた時に上書き保存するようになる。
バージョン管理が不慣れな者にとってはロック方式が馴染みやすいかもしれないけど、そういう者はgitは使えないから関係ないし。
>>333 > そういうのを手元でやってるうちはいいけどな
> ローカルと同じ感覚でやられると非常に迷惑
履歴の修正っていうのは、ローカルでやる作業なんだけど、
ローカルと同じ感覚でやられると迷惑ってどういうこと?
レスの内容によっては、お前が使い方わかってないだけじゃんってことになりそうだが。
間違った使い方をする奴は迷惑。 それって何使っても当てはまるだろう。 subversionを1ファイルずつコミットする奴は迷惑。 ほらなw 間違った使い方をするのは、そいつが迷惑という話であって、 gitの問題ではない。
>>355 > 例えばVSSの場合だったら、ロック中のファイルを編集するために別のフォルダに退避して、ロックが外れた時に上書き保存するようになる。
ならねーよ。
add してcommitしたあとにpushするじゃないですか pushする前に他の人が先にpushするかもしれないのでfetch & mergeしてからpushしたほうがいいのでしょうか?
pullしちゃいけなくてfetch & mergeがいいって記事みたんです
>>357 svnを使い慣れた人間にgitを使わせる場合には、gitとしての使い方を教育せずに
gitを使わせるような奴はそいつが悪いってことになる。
>>337 何で?
自分は満足なんだけど、誰も使ってないみたいだから大きな穴があるんじゃ
無いかと気になってる。
>>337 じゃないけど、git-svnを使うと結局svnから逃れられなくなる。
それは単純にsvnだけ、gitだけを使うよりも難しい作業を強いられることになる。
gitのノウハウにもgit-svnを使った例は少ない。
github及び、githubクローンであるgitlabを使うときどうするのかよくわからない。
何をするにも、gitだけだとこうやるけど、そこにgit-svnがくると・・・などという話が
いつまでも付きまとってくる。
穴があるというよりも大変。
>>363 自分も使ってるけど、今のところ運用で詰んだことはないな。
>>365 開発では?
gitの特色である開発中にいくつもブランチ作って
幾つものブランチを切り替えて
歴史を修正しながら、小さな修正で
開発するってことが普通に出来るの?
>>355 cvsとかsvnでもupdateしてからcommitするようにすればロックなんて機能は必要ない。
gitの場合、pushをcommit、pullをupdateに置き換えてかんがえれば、svnからの移行もしやすいんじゃないかな。
gitはあくまで、ローカル作業がより便利になっただけだよ。
> gitはあくまで、ローカル作業がより便利になっただけだよ。 そうなんだよな。 ソースコードはサーバーで一元管理するもの。 逆に言えば、ローカルにあるものはソースコードの管理というよりも 開発そのもの。だからgitは開発がより便利になる。 ステージングとかいいよ。 開発してる時に、小さなミスを見つけて、それだけコミットしたいと思うだろう? gitなら、git addでファイルの ”一部分” だけをステージング(ようはコミット予定リスト)し あちこち修正途中のファイルがあったとしても、簡単にファイルの一部分だけをコミットすることができる。 svnだったら開発中によくある面倒なことを gitであれば楽にこなしてしまう。
svnだエラーの出る状態でコミットするなとか言い出す人が多かったな。 エラーの出る状態から作り直して失敗したらどうするんだ。 svnでもブランチとか適切に運用できていればいいんだろうけど。
>>369 gitでもエラーの出る状態で入れないでよ
ローカルで正しく直してからプッシュするというのなら エラーが出る状態でもいいかな。
エラーが出る出ない以前に 作業途中でコミットするのが納得できんな 単に途中経過を保存したいならstashがあるし 途中経過を他の人に見てもらいたいならMLや掲示板とかの方がいいだろう
>>372 stashはpopという引数があることからもわかるように
スタックという考え方が基礎になってるんだ。
作業途中の割り込み、の割り込み、の割り込み
といった用途で使うもの。
作業途中のコミットは、
いくつかの作業を並行して行っている場合に使う。
Aという作業をやっている途中で、
Bという作業をやってさらに
Cという作業に移ってAという作業に戻る。
と思ったら、Cという作業を進めなくてはならなくて
次はBみたいな。
stashはpullとかmergeする際の本当に一時的な退避にしか使わない 時間が経つとstashしておいた事実を(俺が)忘れてしまう 作業が割り込む場合は作業ブランチ切ってコミットしてる
>>372 あとでそのエラーになった修正を使いたくなるかも知れないじゃないか。
それにチケットと関連付ける時にソースもあった方がわかりやすい。
公なとこにpushするなら、その前にまとめればいいだけだし。人のローカルリポジトリに口出しするとか、わけわからんわ。
mercurialがいろいろ縛った理由をちょっと理解できた気がする
> 人のローカルリポジトリに口出しするとか、わけわからんわ。 っ鏡
まあ言ってることが自己矛盾してるわな
作業途中でコミットできるのがgitのいいところじゃないか。 手元でずいぶん変更したけど まだビルド通らない/テスト通らない/バグが直りきってない ときにコミット我慢するの? 途中まで実装したけどやってみると案外うまくいかないな。もう一つの案をで実装してみるか、ってときにその瞬間のコードをコミットしないの?
381 :
380 :2013/09/13(金) 09:15:18.83
作業状態の保存(commit)と成果物の公開(push)を分離したところがgitの改善点だろ。 svnと同じタイミング・粒度でしかコミットしないという使い方も否定されないとしても、厳しすぎる制約を自ら課しているんだというのは認識しといた方がいいよ
もう一つの案を実装してみるときはブランチを切る 作業途中ならstashで保存する これがベストな方法とは言わないし 他人のローカルリポジトリに口出しする気もないが 少なくとも作業途中でコミットする必然性はない
383 :
380 :2013/09/13(金) 09:24:23.05
ブランチ切るのにコミットしないんだ。ふーん
svnでもいただろ。「また完成してない」とか言って何週間もコミットしない奴が。 手元に巨大な変更を抱えてて作業コピーの日付バックアップを一生懸命とってるの
testブランチでコード書いた後は git checkout master git merge test git add -A git commit -m "ちょめちょめ" git push この流れで合ってますか?
>>384 Gitでは「まだ完成してない」とか言ってpushしない奴ということになるわけですね
まああれだ。 自由ってのは便利だが、一定のルールで遵守させなければならないと。
>>385 git add -A は何をやってるの?
>>386 gitでも「まだ完成してない」と言ってコミットしないよ。きっと。
という今の流れ。
gitはそれこそstashみたいな、コミットしない自由も考慮されてるとは思うけど程度問題だな。
無闇にコミットを避けることはない
>>388 あれなんですよ
git add .
ってやると、なんかたまにgit add -A使えってメッセージが出るのです
>>390 git add . は何のためにするの?
>testブランチでコード書いた後
これはtestブランチで書いたコードをtestブランチへコミット済みって意味?
>>367 > cvsとかsvnでもupdateしてからcommitするようにすればロックなんて機能は必要ない。
アホすぎ (w
チームにこんな奴いたら大変だろうな
いえ、ちがいます masterブランチに移ってからaddします
>>393 何のためにtestブランチを作ったの?
merge だけでコミットされる (衝突がなければ) からその後の add と commit は無駄じゃね
ソースの頭にインクリメンタルなソースバージョンつけたいんだけど gitってそういう思想じゃないから無理だよね・・・ どうしようかな
そんな時にセマンティックバージョニングとかいいんじゃね?
なんかすごい伸びてるな…
>>366 できるよ。自分だけだけど。
testブランチにコミットしていって、 ファイナルちょめちょめの後でmasterへマージ
gitを拡張することって言うのはできますか? たとえば、git commit ってしたらc:\my.logに日時を記録する感じの機能をgitに組み込むなど
できるよ
>>400 適当なリポジトリで.git/hooksディレクトリの中身を読もう
>>384 いまどきのIDEだとローカルの作業履歴位はとってくれてるんだけどね。
コミットコメントが有るわけじゃないから何をやってたか分からないけど
ローカルの作業履歴としては割りと機能する。 テキストエディタ以外は
認めないって人には分からないだろうけど。
Eclipseの履歴だと最低限は役に立つけどマージしたりスナップショット取ったり明示的にやれるわけじゃないし
>>400 gitのコミットログを見ればいいだけじゃん?
なんでわざわざ別に出力すんの?
>>403 エディタの編集履歴が便利なことは否定しないが、複数ファイルのスナップショットに名前をつけて保存できる機能とは区別しようぜ
407 :
デフォルトの名無しさん :2013/09/13(金) 22:55:30.79
>>363 git-svnだとマージに非常に制限がかかる。
そうなるとコンフリクトを恐れるようになって、いちいち手が止まってしまいストレスになる。
msysgitでdaemon立ち上げてリモートからpullやcloneしようとしたとき、たまにエラーになることが あるんだが、原因を調べるには何を調べればいいかな? 表示されるエラーメッセージはInvalid Argumentとかearly EOFとかだけなんで意味わからん。
--verbose 付きで起動してみれば?
>>407 よく知らんのだけどrebaseじゃダメなの?
>>389 分散型だと中央を通さずに変更を渡すことが簡単だから、一部にだけ変更を伝えるという方法もあるね。
分散型はまだまだ色々な使い方ができそう。まあ運用を決めてもらわないと何もできない人には制限された方がいいんだろうけど。
>>407 dcommit時にコンフリクトするとどうなるの?
いつもrebaseしてからdcommitしてたから、意図せずマージになってたことは
ほとんど無くて、コンフリクトしたことがない。
413 :
デフォルトの名無しさん :2013/09/14(土) 00:40:38.03
>>412 rebaseあんまり使わないから向いてないのかも。
他のブランチでは気にせずgitらしくマージを繰り返してそれを中央リポジトリで公開して、いざsvn用のブランチに取り込もうとしてrebaseではまることが多かった。
ローカルでグチャグチャやってる分に口出す気はないよ。 それを上に持ってくんな ということを言っている。
それ結局GitでもSVNでも同様だろ?
>>408 git config --global core.compression -1
でどうでしょう
417 :
408 :2013/09/14(土) 07:24:34.77
>>409 それが、付けてもなんもわからなくて。
せめて、何に渡した何というArgumentがどうInvalidなのかくらいわかればいいんだが。
>>416 よくわからんが、エラーが出た箇所からすると関係ありそうな気がするな。
環境は会社なんで週明けに試してみるわ。ありがとう。
>>412 rebase しないと dcommit できないんじゃないか。
>>419 dcommit時にマージされます。ローカルからはそう見える。
svn上では、update→commitに見えると思う。
>>405 複数人へのgit教育用にコミットしているかをひとつのログに集めたいから
>>420 d
自分が使ってた当時、怒られた記憶があったんだが。
>>422 コンフリクトした場合という話の流れを見逃してた。
コンフリクトした場合はどうなるかやったことがありません。
しなければマージされます。
svn dcommit時にsvn rebaseはされる svn rebaseはrebaseもしている 最新リビジョンの先にしかコミットできないのと svnのコミットにハッシュ振る必要があるので ここでコンフリクトした場合確か無名ブランチに飛ばされるはず 自分はdevブランチ上で解決するようにしてるからあまり見たことないけど 共有がgitでも共有リポジトリの歴史いじることは推奨されてない気がするから 運用は似たようなもんじゃないの ?
ぼくはこれからバージョン0.0から始まるプログラムを作ろうと思います 1.0まで作ったとします。コミットもプッシュもたくさんやってきました そしてバージョンアップさせていき2.0になりました そこで質問です やっぱりバージョンが違う場合でも同じリポジトリにコミットとプッシュするほうがいいのでしょうか? あとバージョンごとにブランチは分けたほうがいいでしょうか?
そんなめんどくさいことしない
>>421 git logで誰がいつcommitしたか残ってるけど???
違うんです、commitした時点で別のログに記録したいんです
>>400 .git/hookでできるんじゃないの
拡張じゃなくて組み込まれてる機能だけど
CドライブとDドライブがあるんですが Cドライブでコードを書いて、Dドライブをgithubの代わりとしてここにpushしたいのですが こういう場合って、Dドライブのほうでgit init --bareってやってから Cドライブ側でgit clone 〜ってやるべきでしょうか?
431 :
デフォルトの名無しさん :2013/09/19(木) 23:50:18.12
HerokuとGithubしか使ったこと無く、Git単体で運用はしたことないんですが、 既に存在するプロジェクトのフォルダに対して git init git add . git commit -m "comment" を実行した場合、.gitフォルダにこれまでのバージョンが記録されていって、 いざとなれば、巻き戻せたりするんですよね?
433 :
デフォルトの名無しさん :2013/09/20(金) 00:20:17.14
Githubって使った事ないけど、 ローカルリポジトリ無くても 使えるものなの?
435 :
デフォルトの名無しさん :2013/09/20(金) 00:58:24.60
ローカルリポジトリは必要かもしれません。 ただしいつもgit cloneしてから、add, commit, pushしています。
ふーん、くろーうしてるんだな。 あっそ。
初心者がhelloworldやるのはgithubってやつでいいの?
try gitでもやってれば
全世界にhelloworldを公開したければ。 gitとgithubの違い分かってる? チーズとチーズケーキくらい違うよ。
githubでhelloworldやっちゃった テヘ
「GitHub HelloWorld」でググるとみんなやってます
Hello Worldからforkする人っているの
初心者とかがレベルごとにステップアップできる gitがあればいいのによくわらないけど
>>439 ケーキとケーキ屋くらい違うと思うな。
試しに作った初めてのケーキをケーキ屋に並べるとか、恥ずかしすぎる。
445 :
デフォルトの名無しさん :2013/09/20(金) 23:22:06.35
ぼくは恋人の始めてのケーキも味があっていいと思うんだ(直訳)
445さんすてき!抱いて! 男だけど
HelloWorldをGitHubに公開したからって誰かアクセスしてくるわけでもあるまいし GitHub側が禁止してんならともかく何でもうpしてけ
おまえらがうるさいから 今HelloWorldのリポジトリを削除していってるよ
どうしよう、俺もSandBoxプロジェクト削除してこようかな
git checkout -b test ファイル編集 git add . git commit -m "コミットします" git push でgithubにtestブランチができます ここで「はっ!」と気づいたのですが、間違えてtestブランチにpushしてしまいました testブランチじゃなくてmasterブランチにpushしたかったのですが、ここからどうしたらいいでしょうか?
俺だったら自殺もんのミス
バージョン管理システムなんだから前の状態に戻せるんじゃないの?
git logのオプションに--graphと--reverseを付けられないんですが --graphで表示したものを逆順に表示する方法ありませんか?
>>450 そのままmasterにマージしてpushすればいいんじゃね
×バージョン管理システムなんだから前の状態に戻せるんじゃないの? ○バージョン管理システムなんだから間違った状態も保存される。 間違った状態そのものを完全に履歴から抹殺するのは非常手段。
もどしてやらないとダメでしょうか? そのままpushしたら To git@〜.git ! [rejected] master -> master (fetch first) error: failed to push some refs to 'git@〜.git' hint: Updates were rejected because the remote contains work that you do hint: not have locally. This is usually caused by another repository pushing hint: to the same ref. You may want to first merge the remote changes (e.g., hint: 'git pull') before pushing again. hint: See the 'Note about fast-forwards' in 'git push --help' for details. ってなりました
Githubで質問です。 Pull Requestが来たんですが、内容の一部だけ採用して、他の部分は今までの自分のでいきたい、 という場合はどう処理すればよいのでしょうか?
全部まとめて送るなカスって送っとけ
一部だけ採用できるってことは別種の変更がひとつにまとまってるってことだろ? コミット分けろボケって言っとけ で、全部マージするんじゃなくて好きなやつだけcherry-pickするとか
ぼくもきれいなおねえさんに、ちぇりーぴっくされたいです。
GitHubの質問ってこのスレでいいのん?
内容によるだろうな
指定したcommitに対応するtagがあればそれを表示する方法は?
リモートのブランチをマージすることはできないの?
できますん
,gitignoreの記述で、 サブディレクトリ以下には適用されない、 そのディレクトリ直下のみのパターンを書く方法は?
パターンを/からはじめる
>>463 git tag --points-at hoge
Tagとハッシュの一覧は
git show-ref --tags
ファイルごとにバージョン番号を自動採番したいけど どうしたらいいんだろうか
バージョン番号って何だ?
>>470 CVSにたとえるなら $Id$ みたいなものがほしい
>>470 そのファイルのコミット回数のようなものでも構いません
exportだかarchiveだかの時に置換フィルタをかけるやり方はなんかあった気がするけど そもそもgitのIDだかってSHA-1ハッシュ値だから、何も嬉しくない気が
バージョン番号1のファイルがあったとして、 そのファイルを複数のローカルリポジトリで更新したら それぞれのリポジトリでのバージョン番号はどうなるんだ?
>>476 それぞれ2になるんじゃね
んでマージすると一気に4になるんだよきっと
>>476 ,478
「どちらも2になって、マージすると3になる」説を推す
マージすると大きいほうの番号より1大きい番号になるってことで
それより不可解なのは番号がファイルごとに振られていることだな
いやおまえらw仮にもバージョン番号なんだから、 同じバージョン番号の違う内容のファイルがあったらダメだろw
つまりブランチ名がバージョン番号に含まれればいいのか! いやちがう レポジトリを一意に識別するための名前も含まれる必要があるのか!
ローカルリポジトリでは番号をインクリメントさせません。
>>482 メインのリポジトリで複数のブランチに別れたときはどうするの?
どうやらgitのやり方とはそぐわないことをやりたいらしいってことは分かった で、何をするためにバージョン番号とやらが必要なんだ?
コミットIDさえあればそのリポジトリに存在するすべてのファイルの状態を特定できるんだから、 レポジトリの内容を元にバイナリを作ったりデプロイするときに コミットIDを保存すればいいと思うのだけどね
俺の周りでもファイルごと版数にこだわる人たちが多いよ。 SVNに移行したのも最近だよ。(やっとタグをつけるプロパティを発見したらしい) どうも、バラバラなファイルが集まったものが成果物という認識らしい。 だから何が集まってできたものか管理したいらしい。 それにしてもいろいろ的外れなわけだけど。
>>486 > やっとタグをつけるプロパティを発見したらしい
なんかどえらいもん発見してるな (w
おっと、分かってると思うけどCVSと同じように$Id$とかを置き換える設定ね
>>488 CVSの$ID$はブランチ切ったりマージしたときはどうなるの?
ブランチはピリオドで区切った数字が増える。1.2からブランチして1.2.1.1とか 1.5にマージすると1.6じゃないのかなあ。要はただのcommitだよ。 cvsでもリビジョンの数字自体に意味はない。ルールわかりやすいけどただのID。 そういや、ファイルごとの版数を管理したがる人たちは、cvsでも数字に意味を 持たせたがってた。要所要所でリビジョン番号を手で指定するとかw 全ファイルわざわざリビジョンを変えたりしてたよw ファイルごとに変えたいんじゃなかったのか? 意味分かんねえw というわけで、リリース物の管理はgitの外で行えばいいんじゃないでしょうか? ヘッダにそれらしい版数をつけるスクリプトを流すとか。
Gitはブランチを切ったときにどっちが親とかの概念がないからなあ もとのブランチのファイルが1.2で 新しいブランチのファイルが1.2.1とか そういうやり方は馴染まないよね
ようするにgit以外のやり方でgitを使おうとして大混乱、でFA?
gitを使うのに、git以外のやり方をすると 何もかもぶち壊しになるよ。 gitつかう意味がなくなる。 やめたほうがいいじゃなくて、 やめろって命令するレベル。
話は少し違うけどファイル別にコミット時のバージョンが保持されると、identコマンドでリンクされているソースのバージョンが取れるから便利だよ。 再現試験とか、リリース間違いの発見とか。
だからコミットIDをひとつだけ埋め込んどけば リンクされてる全ソースが特定できるんだってば
「ファイルごとの版数が分かる」じゃなくて 「ファイルごとの版数しかわからない」だったんだよね。(タグは打てるけど) コミットIDが分かるようになったんだから、もういいじゃん。
>>460 財布の中身だけチェリーピックしてもいいですか?
gitは開発中に回せ回せで使っておいて 特定時点の動くものをsvnなどに まとめるのがいいのか?
502 :
デフォルトの名無しさん :2013/09/23(月) 10:38:24.27
You gonna dig this.
git使うならこれもつかったほうがいいってやつ教えて
source tree
tig
>>500 いいと思うよ。
きちんとバージョン番号振ってくれればそれでいい。
バージョン番号って年月日+ビルド番号じゃないの? あとそれにブランチ名をくっつけて バージョン番号。
日付も入れるの?
よく入ってるよね?
512 :
453 :2013/09/23(月) 15:49:46.64
どなたかお願いします
それはアンパンマンに任せよう
>>508 分散バージョン管理環境では、
ファイル単位での単純なバージョン番号に依存したら危険なのは理解できる?
必要なのは各々のファイルをなんらかのIDで特定できることだよね?
バージョン番号が増えていく数字でないと嫌で、$Id$でその数字をファイルに展開したいという人は、gitを使わないほうがいい。 そのやり方は絶対にgitとなじまない。
>>514 幹側では分散させない運用なので問題ありません。
>>517 ローカルにビルドしたとき困るじゃん?
バージョン番号とファイルの内容が一致してなくて混乱する
>>517 >>494 でもふれたけど、コミット時のバージョンと今使っているファイルのバージョンがわかれば、あとの調査はバージョン管理システムの仕組みですればいいのだから、ファイル別にとかにこだわる理由はないよね?
それでもこだわりたいのなら、まずはその理由を明確にするべき、今の状態だと単につっているようにしか見えない
ファイル別に数字のバージョンがつくのはciとかco時代の名残だよ。
分散型ではファイル別からプロジェクト別へと管理する単位がシステム的に変わってる
そこは「分散型では」ってわけじゃないだろ。
ちょっと思いついたことがあるんですけど gitを使った掲示板ってありませんよね? pushしてレスするの
githubじゃなくて?
>>519 gitではまとめて管理「できる」という認識です。
>>523 gitでできるかどうかではなく、
自分がどうしたいかで考えなよ。
まず、プロジェクトのファイルってのは
単体でバージョン管理しても意味が無い。
バージョン1のファイルとバージョン2のファイルを
組み合わせて使っても正しく動かないからだ。
バージョン管理の世界は、そうやってファイル単体で
バージョン管理するのは意味が無いよね。ってことで
コミット単位でバージョンを管理する方法に進化してきた。
えっと、ここまでは理解できる?
>>521 掲示板じゃないけど、BitbucketのWikiはGitだったよ。
>>525 >自分がどうしたいかで考えなよ
ファイルごとにバージョン番号をつけたいです
>>525 >単体でバージョン管理しても意味が無い
私どもにとっては意味があります
>>525 >バージョン1のファイルとバージョン2のファイルを
>組み合わせて使っても正しく動かないからだ
それはさらに全体のバージョン(タグ)を使って管理します
>>527 ファイル内に直接バージョン書いておいたらいいじゃない
そのファイル単独をgitでバージョン管理したいなら、そのファイルのみでリポジトリ作ってgit submoduleとかで管理すべきでしょ
git使わないほうがいいんじゃないのか
日付フォルダ最強
確かにgit使わないが正解だわ
普段は日付フォルダにしといて 動作確認出来たまとまったバージョンだけコミットするのもアリ
いやいやいやw
ファイルごとにバージョン管理したいならサブモジュールって手法もある。 やりたい事とあってるかわからないけど。 あと考えついたのはファイル単位でコミットしてコミットする時のコメントでバージョン番号残すとか、それくらいかな。
pushしたときに指定したバッチファイルを実行するようにする方法をおしえて
>>527 それは目的でなく手段では?
ファイルごとにバージョン番号をつけた結果、何を得られるの?
俺も聞こうと思ってたこと
>>539 が聞いてくれてた
目的決めるのマジ重要
答える側は、それはファイルごとにバージョン付ける以外の方法で解決すべき問題なんだろうと思ってるし、 質問する側は、他の方法で解決するという選択肢はないと思ってる感じ
527〜529の書きこみが 話が通じてない雰囲気がぷんぷんするね
cvsでスキルが停滞してる現場のコード規約なんだろ。あるいは元請けのカスエンジニアあたりが無意味な要求してきたりな。gitでやるが間違い。だからcvsかsvnでやっとけ。 あとgit svnはハマりポイント多いからやめとけ。工数浪費していい事がねえから
545 :
片山博文MZコスモ ◆T6xkBnTXz7B0 :2013/09/24(火) 17:04:37.27
githubで公開したリリースは削除できないの?
gitリポジトリをdropboxに保存したいんですが gitリポジトリを暗号化するほうほうないですか?
皆さん機能追加やバグ修正用のブランチ名ってどんな風にしてますか? 日付、BTSの該当チケットID、機能の簡単な説明文などありますが どんなものが便利か悩んでます
チケットID?
550 :
片山博文MZコスモ ◆T6xkBnTXz7B0 :2013/09/24(火) 18:06:23.06
>>544 あの頑固さは規約でそう決まってるみたいな臭いがする態度だな
>>546 微妙にスレチ なぜ暗号化するのをよく考えてからTrueCryptでggれ
>>548 機能の説明文に一票
会社ではJira issueのIDを名前にしてブランチ切っている。
>>544 git svnのハマりポイントって何?
使ってるから予め知っておきたい。
>>527 > >自分がどうしたいかで考えなよ
> ファイルごとにバージョン番号をつけたいです
それは本当にお前がやりたいことなのか?
やりたいと思っているならば、
そこに理由が必ず存在するはずだ。
その理由を言ってみてくれ。
それがないなら、実はやりたいとは思っていないということになる。
ファイルに付いたバージョン番号を眺めるのが趣味なのかもしれない
>>553 別人だけどsvnの外部参照は使えないと思った方が良さそうだったよ
>>553 svnを単体プロジェクト推奨レイアウト使ってれば早々困ることはない。
svnはフリーダムな運用が可能で、現場だとかなりワイルドな使い方をされる事が多いからgit svnだと追跡しきれない事がままある。gitはファイル名文字コード問題も完全じゃない。あと忘れた。
個人なら中央もgitでFAだな
githubにpull requestを送る方法って そのリポジトリにmasterブランチ以外のブランチでプッシュするだけでいいですか?
pull requestはgithub固有の内容じゃないのでここでOKです
じゃあ、git request-pullの話をしましょう
>>559 つい先日まで静かだったスレが活気づいててワロタ
ブランチの特定のファイルだけマスターにマージって出来ないのでしょうか? ブランチの特定のファイルの何行以下だけ マスターにマージという形も出きるといいのですが
ほしいファイルだけぬくかたちでコミットし直してマージかなぁ。 ソースツリーかえるとあとでコンフリクトしそう
やっぱり職場ではgitを使いこなしてないと即戦力にはなりませんか? git clone 〜 git init git add . git commit -m "新規作成した" git checkout -f git checkout -b test git merge test 基本的にこれしか知りません
先輩すいませんでした今すぐ読んできます
>>565 使ってるところはほとんど無いと思う。
まだ趣味の世界。
といか、職場でうちらが布教活動する感じだね(笑
rebaseの使い方、とくにontoを指定するケースは、覚えた方がいい。
branchの移動や部分的な取り込みで使う。
>>569 [Sign out]
You must be signed in and on a branch to make or propese changes
[Sign in]
Fork this project and delete file
deleteボタンにカーソルを合わせただけです
574 :
デフォルトの名無しさん :2013/09/29(日) 09:11:01.63
>>563 1) --no-commitでコミット前に止める。
2) マージしたくないファイルをcheckout HEAD ファイル名で戻す。
マージしたくないファイルが大量にある場合はマージしたいファイルの方をリネームなりでとって置いてからcheckout HEAD . で全ファイルを戻し、とって置いたファイルでさらに上書きする
3) addしてcommit
575 :
デフォルトの名無しさん :2013/09/29(日) 09:17:00.49
注意事項として、git的にはmasterに反映しないことを選んだファイルも含めてマージされたことになるから、後から残りのファイルをマージしようとしても上手く行かない。 段階的にマージすることが目的ならマージ元のコミットを分割する方が良い。
javascriptってファイル操作とか出来たんだっけ?
いまどきのは出来るよ
Gitで、 「どこそこにあるリポジトリのこのコミット」 を表すにはどう示す(書く)のいいでしょうか? よく使われる書式があったりしないでしょうか? リポジトリのURLとコミットIDがあれば情報としては足りますが、ブランチ名もいっしょに示したほうが親切かなと思ってます。
リポジトリのURLとコミットID書いて、コメントでブランチ名を追加すれば? 同じことでしょ?w
gitのコマンドは直感的じゃ無いからな・・・ cvsのコマンド形態で分散型ならよかった
コミットオブジェクトの意味が理解できると安心して無茶ができるようになって快適なのだけどね そのへんが理解できてないと各操作が恐ろしい
>コミットオブジェクトの意味 はよ説明
d
あのオプション体系考えたの誰なんだろう センス無さすぎる
おみゃーがセンスあるものを作れにゃー
gitのcheckoutって日本語に訳すならどんな感じになる 一般英語ならcheck outは「貸し出す」ってことだけどgitのもそんな感じでおk?
片仮名でチェックアウト以外の何物でもないと思うが…… 君、ホテルのチェックアウトはどう表現しているんだい。
外泊
gitの場合、他のVCSが使ってたコマンドに相当する機能 程度の意味だよ gitのcheckoutには少なくとも3つの別の機能があるしね
gitのcheckoutに○○しつつチェックアウト 以外の機能ってなんかあるのか?
チェックメイトで
むしろ、一連の作業の開始って意味では 「チェックイン」の方がホテル的にイメージに合ってるんじゃね? とか10年以上前にVCSの話を聞いたときにフーンと思った
チェックアウト 荷物(リポジトリ)を持ってホテル(masterブランチ)から出る
チェックアウト 精算(現時点のリポジトリをまとめて)してホテル(masterブランチ)から出る
チェケラッチョ♪
>>582 cvsは知らんけどsvn使ってた俺から見ればgitよりhgのほうが直感的だと思う
自分が知っているものと同じか似ているものを"直感的"って言う人って居るよね。
git使いのことだな
QWERTY配列は直感的です。
checkoutというのが直観的かどうか
数字の箱とか犬クラスに近い危険な香りがする
>>601 はmercurialとcvsを使ったことがない
荒らしと関わらない場合は「完全スルー」がベスト。
608 :
デフォルトの名無しさん :2013/10/02(水) 10:29:06.07
hgの方がコマンド体系は良く出来ている と思う
hgのことなんて知らない奴の方が多いんだから どう良く出来てるのか説明できないなら便所の落書きだな
毎日新聞か
井の中の蛙大海を知らず
gitしか知らない馬鹿が増えてきたな
>>606 は自分に理解できるレベルのことを直感的と言う。
プロジェクトに途中から参加する場合、まず最初にやるのは git cloneですか? あと毎日最初にやるのはgit fetchですか?
617 :
デフォルトの名無しさん :2013/10/02(水) 15:56:30.53
>>616 普通は fork かなぁ
clone したあとすぐ branch 作るならそれでもいい
>>601 それすげー同意。超あるあるだわ
git使いとかってほんとにgitを直感的とか思い込んでて怖いよね
このスレ読み返してみたけどgitのコマンドを直感的って言ってるやつは一人もいないよ hgのコマンドを直感的って言ってるやつはいるけど
>>618 forkはgithubのことだろう
git一般的にはcloneでいいよ
互いにライバルとしてgitとmercurialは現在似たような機能を有するようになってるけど 根本的にアプローチが違うと思う mercurialは既存のVCSの延長線上で今風の要請に応える形だが、gitは既存のVCSの否定から 始まって、UIを既存のVCSに寄せていった形
VCS?
Version Control System
626 :
デフォルトの名無しさん :2013/10/02(水) 23:34:00.79
>>619 gitを使い込んでて、あのコマンド、オプション体系を直感的だと思う奴はいないと思う
慣れればなんとかなるとは思ってるだろうけど
何をどう直せと言ってるんだ?
別に直す必要はないよ シェルの補完とかがあればそのまま使うのも問題無いし 頻繁に使うコマンドやオプションは自分で定義しなおせばいい
>>628 うん。それは知ってる。
どう直せと言ってるのか知りたいだけ
>>629 直感的ではないというだけの話だろ
どう直したら直感的になるか、なんて知るかよ
コマンドが全部日本語的になれば日本人にとって直感的になるんじゃね 英語だとcheckoutみたいに何となく意味をとらえづらいというか checkoutとはそういうもんだと言う認識が出来るまでの辛抱ではあるが
それだと結局、直感=自分の知ってるものと同じにしかならないだろ。 ソースコードのバージョン管理なんか普段の生活でやらないだろ? 例えばタッチパネルの使い方みたいに指で触れば動くという使い方は タッチパネル以外の普段の生活でやることなんで”直感的” という考えは成り立つ。 でもソースコードのバージョン管理は、似たようなものが他にない。 だから直感的なんて考え方がそもそもありえない。 あるとするならば、自分が知ってる他のバージョン管理ソフトと同じかどうかって言うこと。 他の人も言ってるように、直感的なんて言葉を使わずに、 俺の知ってる○○とコマンド体系が違うヤダヤダって言えばいいんだよ。
>>631 git ソースコード編集開始 とでも書けばわかるのか?
全然日本語が適切じゃないが。
どっちみち専門用語にしかならんのだから
直感的になることなんてありえないよ。
634 :
デフォルトの名無しさん :2013/10/03(木) 02:25:24.86
バージョン管理のコマンド系に命名規則の規格を設ければいいんだよ!
checkoutにこだわっちゃってる奴がいるんだな CVSとかと意味が違うから、気になって、気になって、気になって、仕方無いんだろうな
>>631 日本語とかそういうのじゃないよ。gitのコマンドは引数によって同じコマンドでも
想像していた動きと違う動きをする部分でしょ。作りながら色々と機能追加する
場合によくある。ルールを決めてやり直すには普及しすぎてるのが頭の痛い
ところだろうね。
>>636 だからー。それがなにか言えって。
ぐだぐだしてるのは、それが何かを言ってないから
誰も賛同しようがないんだよ。
>>636 たとえばどんなコマンドですか?checkout?ww
checkoutがブームなん?
コマンドの違い |git |svn | cvs | hg | ―――――――――――――――――――― コミット| | | | | ―――――――――――――――――――― リポジトリ作成| | | | | ―――――――――――――――――――― なんか| | | | | ―――――――――――――――――――― 以下つづく
まずリポジトリってのはgitは分散型だから ”ローカル”に有るんだよね。
RCSとSCCSが無い
ハードゲイ
頻繁に使う機能にオプション2個指定が必要とか
なぜ違うものを比べようとするのか。
必要に応じて何でも覚えていけばいいさ
物覚えが悪くなった あとせっかく覚えても すぐ忘れるようになった
>>644 具体的に何のコマンドの何のオプションですか?
・checkoutにbranchの切り替えとファイルの取り出し(上書き確認も無し)の2つの用途がある ・gitのrevertとcvs/svn/hg/bzrのrevertは全く意味が違う ・git独特のstaging hgも使い込むとrecord,mqに手を出すだろうからstagingは擁護できるが上2つはちょっとね 今更変えられないだろうけど
650 :
デフォルトの名無しさん :2013/10/03(木) 09:30:39.20
checkoutは有名だとして、他にはbranchとかかね。 引数無し→全ブランチの表示 引数1個→現在のブランチから引数で指定した名前のブランチの作成 引数2個→2つ目に指定したブランチから1つ目に指定したブランチの作成 引数1個+mオプション→現在のブランチの名前を引数で指定した名前に変更 引数2個+mオプション→1つ目に指定したブランチの名前を2つ目に指定した名前に変更 引数1個以上+dオプション→指定したすべてのブランチを削除 あと、diffはよくワーキングディレクトリとHEADの指定を間違うな。差分が出なくて、あれ?って思うことが多い。
結局checkoutだけなんだな stagingもrevertも単にgit側の仕様が気に喰わんって言ってるだけじゃないか branchはcreate-branchとかmv-branchとかdelete-branchとか作れってことか? そんなのはメンドクサイだけなんで勘弁してほしい diffは具体的にどうしろと? いまのHEAD、index、workの構造に忠実な指定方法よりいいのがあるのか?
頻繁に使う機能にオプション2個指定が必要な例はどうなった?
とりあえずバージョン管理はgitからはじめてるんですけど 他にも有名なバージョン管理システムにsvnとかhgがあるじゃないですか gitを覚えれば他の2つも簡単に覚えられますか?
覚えられません。
むしろgitは最後にした方がいい
branchは別にサブコマンドでいいけど、stashやtagと微妙に統一されてないのはなんとかしてほしい
>>656 stashやtagと何を統一すればいいの?
gitは内部仕様がコマンド体系に中途半端に現われてしまっているのが失敗してる。 svnの「ブランチとタグはありましぇーん」と同じ失敗。
>>657 オプション。git branch(オプション無し)、git stash list、git tag --listみたいな。
ブランチだろうがタグだろうがコミットだろうが全部hashで指定できるのがすごく気に入ってる
>>659 git branch --list は使えますよ
git stash の次はコマンドで統一されてるんで --list とかにされても困ります
>>661 そもそも
>git stash の次はコマンドで統一されてるんで
がtagもstashもそうなってなかったり、オプション無しの動作がバラバラだったりするのは気にならんのかね?
>>662 オプション無しの動作は統一されるより良く使われる機能が割り当てられるべきだとおもうけど?
一部コマンドが2段階になってるのも、
無理に1段階にして妙な名前になったり妙なオプション指定することになるよりはいいかな
そんなことが気になるようだと、一般的なUnixコマンドの中に
hg xxx とか git xxxみたいな二段階コマンドが紛れ込んでるのも気になるの?
なんでgitは最後のほうがいいんですか? やっぱりnoobお断りな プログラミング言語で言えばパソコン初心者がいきなりC++を覚えるとか 小学生がいきなり東大入試受けるぐらいの最難関なソフトウェアなのですか?
>>663 ちげー。
git stashがサブコマンド的記法をするならgit tagも-mや-rじゃなくてgit tag mvやrmでいいだろって話だ
>>665 それをやっちまったら使いにくいだろう
gitやhgも他のUnixコマンドに合わせて
サブコマンド指定なんてやめて全部オプションでやれって言ってるようなもんだ
普通のコマンドはサブコマンド指定なんか無しでオプション指定だけの方がいいね でもgitやhgみたいな複雑なコマンドは、オプションよりもサブコマンドにしたほうがいいね 普通のサブコマンドは2段階のサブコマンド指定なんか無しでオプション指定だけのほうがいいね でもgit stashやgit bundleみたいな複雑なサブコマンドは、オプションよりも2段階のサブコマンドのほうがいいね
なんつう一貫性のなさ。
tagもstashもbranchも、中に作成、リネーム、削除、一覧などを内包してるという意味では揃えるべき。
>>667 の論で言うならbundleなんかオプションでいい
stashやbundleのサブコマンドを適当にオプションなんかに割り振られたら泣くわw やたら一貫性を重視するやつのUIは使いにくくてかなわん
全部をサブサブコマンド化は勘弁だし 全部をサブコマンド+オプションにするのもサブコマンドが増えてくるとオプションのパターンが増えすぎだと思うし 昔から存在するよく使われるコマンドはサブコマンド+オプションで、 あとから追加された新しい概念のコマンドはサブサブコマンドみたいな感じなのは、わりと妥当だと思うけどね
git branch -D ブランチ名 git branch -d ブランチ名 git branch ブランチ名 git branch git stash save git stash list git stash apply branchとstashでよく使うのはこの辺か branchが2段階コマンドになったら面倒そうだし、 stashが-sとか-aとか--listになったら使いにくそうだな・・・ どっちかに揃えるとか却下だな
672 :
デフォルトの名無しさん :2013/10/03(木) 14:33:01.22
まあ、要するに直感的を目指すと一貫性を追求することになって冗長かつ使いにくくなるんだよ だからgitには慣れるしかない
冗長で結構 使いやすさに関しては好きにエイリアス作ればええねん git brd (git branch -D) とか git std (git stash drop) とか
慣れれば良いだけならどっちでも良いだろ
AndroidとiPhoneの2つのスマートフォンを使っていますという感じか。 どっちももはやスマートフォンってレベルじゃねーよというw
スレが超加速しててワロタ
>>664 gitの良さを味わっちゃったら他のクソCVSにはもう触りたくない
そんな話でしょ
またgit信者が来たか・・・ お互いの利点を確認できるって意味だろ gitしか知らない奴はホント屑ばっかだな
個人でCVSを使う分には好きなのを選べばいいし 他人のプロジェクトに参加したいんならそこの流儀に合わせればいい 何の議論の余地もない
CVS?
>>680 Version Control SystemのVCSのつもりでした 恥ずかしい
>>678 はい、煽りに対して煽りを書いた屑です。サーセン
cvsでできてgitではできないこと って結構多いからな その機能を必要としていた人にはちょっとつらい
たとえば?
その機能の必要性は?(ニヤァ
今日のお祭り会場はこちらですか?
svnからの移行が自然なのはhg gitは何でもやろうとして何がなんだか分からなくなる
つまり、githubはオワコン?
>>683 任意のmodule単位のcheckoutは便利だな。それを想定して作ったリポジトリは未だにcvsで運用してる。
多いとは思わないけど。
・スペース区切りの順番で混乱することがあるので、hgみたいに-rオプションでコミット指定できたらいいと思う git log branch filename git grep pattern branch ・git show branch:filename に対して git blame branch filename という統一性のなさ ・標準入出力 git bundle create - branch はOKで git bundle unbundle - は不可能というのも不思議
691 :
デフォルトの名無しさん :2013/10/03(木) 22:03:49.67
C言語とJavaと違うからって文句言うのか!gitとcvsが違うからって文句言うわがままな奴は
すいません! 前回commitしたファイルを全部知りたいんですがどうやって調べるのか教えてください
こう? git log --stat
695 :
デフォルトの名無しさん :2013/10/03(木) 23:03:40.18
git log --name-stat HEAD~1..HEAD
Rubyにgollumっていうwikiエンジンがあるじゃないですか あれはgitにコミットするとデータが反映するそうなんですが どうやって最新の内容を取得しているのでしょうか?
ソース嫁
リポジトリへのコミット時にリポジトリからデータ取り込むスクリプト起動?とか想像したが こいつはHTTPアクセス時にリポジトリから直接データ取って来てページ作ってんのかな
700 :
デフォルトの名無しさん :2013/10/05(土) 13:47:01.95
ビックウェーブきたなwww
702 :
デフォルトの名無しさん :2013/10/05(土) 16:36:44.30
twitterもRuby使うのやめたって言ってたし Rbyってそんな使えないんか
703 :
デフォルトの名無しさん :2013/10/05(土) 16:37:59.12
日本人は役立たずってことか
>>702 立ち上げには良いけど、長期的にメンテし続けるには向かないってことでしょ
処理系として気が効いてる分、負荷は高い。 rubyでさっさと立ち上げて、アクセス集中して負荷に耐えられないくらいになれば 大成功ってわけで。 まあ、実際はそのままぽしゃるプロジェクトが大量に存在してるんだけどな。
railsってそんなに生産性高いの?
全面移行とかデマじゃないか
>>707 素のRubyに比べたら
そうとう生産性高いよ。
他のフレームワークと比べたら
同じぐらいだけど。
>>705 railsは立ち上げはもちろん長期的にメンテし続けるのにもそんな悪くないよ
問題はサービスの規模が大きくなるのに合わせて拡張しようとするとき、
主にコスト的な面でより効率的な選択肢が他にいろいろあるというだけ
711 :
デフォルトの名無しさん :2013/10/07(月) 12:35:54.01
>>710 railsというかrubyの問題だけど長期間メンテナンスしてるとinstance_ofだらけになる。
railsはやっぱり覚えるべきか・・・
しかしC#だとmono必須か、、環境によってはRailsより入れにくい
C#やるならどうせwin鯖だろ
githubがC#使うとか言ってるのはクライアントの話だから鯖とか関係ない
今までクライアントにRuby使ってたのか
クライアントとサーバーのコードを共通化出来るに越したことないから、そのうちサーバーサイドもc#になるかもね mono使ってるんだから、サーバーはそのままunixサーバーでいいわけだし
つまりmsysgitっていうのをインストールするとき.NETフレームワークがないと使えないってことですか?
722 :
720 :2013/10/08(火) 13:43:10.99
forkボタン押すとforkした連中が見られるのな
うんこ
指定した二つのコミットの間で変更、追加、削除したファイルの一覧を表示する方法は?
git logを自分好みでguiに表示したいんですけど apiみたいなのってないんですか?
git logに--formatオプション食わせれば好きなフォーマットでデータ吐いてくれる
>>726 こう?
git diff --name-stat commit1..commit2
git log --format=jsonとかxmlとかcsvってやってみたけどデータとれなかった 嘘を教えられたのだ!
非分散型のgitって無い?
svnはあの開発陣のCVSヘイトっぷりが怖くてキモくて嫌だった
分散型でも一点のみで使ったら事実上は非分散では?
gitはローカルリポジトリだけだと一人でしか使えないじゃん
>>733 非分散(集中?)な時点でgit のメリットの8割を失ってね?
そうか 開発中はgitで自由に開発して、リリースの段階になったら svnにコミットすればいいのか。 これですべての問題が解決しそうだぞ。 検討してみる
それなら中央もgitでいいじゃん
中央までgitにしたら困らない? 大丈夫?
サーバがsvnのときとgitのときで大きく違うのはリポジトリ作成と公開の部分だよね
複数人で使うときに使うコマンドを全部おしえて
>>744 流石に全部となると、git入門 とかでググったほうがいいんじゃね
>>740 オールgitに比べて、中央svnローカルgitにする利点ってなんだ?
中央svnローカルgitは分散管理のままなのは理解してるかな?
オールgit・・・gitだけを覚えれば良い git+svn・・・gitとsvn、そしてgitとsvnの連携の三つを覚えないといけない。 たとえsvnの経験者であったとしても git+svnは、svnを忘れてgitだけを覚えればいいのと違い gitとsvnの連携という、余計なことを覚えないといけない。
非分散管理希望とか言っといて svn+gitで問題解決とかわけがわからんなw
今Gitサーバをインストールするなら何がお勧め? 数人程度の単一プロジェクトで
Gitを入れるのがいいんじゃないかな?
その数人がUnixアカウントやssh使うのに抵抗が無ければ、 特別なものを入れる必要もないけどねえ
>>753 じゃあ聞くが、中央リポジトリどうやってんの?
そこにコミットされたものの把握とかどうやってんの?
コミットされたコードに対するコメントやレビューどうやってんの?
複数人で共有しているリポジトリの管理どうやってんの?
masterへのマージどうやってんの?
不正(質の悪い)コードのマージをどうやって管理してるの?
人が数人集まるってことは、
コミュニケーションが生まれるってこと。
gitだけでどうやってコミュニケーションするの?
> 中央リポジトリどうやってんの? > そこにコミットされたものの把握とかどうやってんの? > masterへのマージどうやってんの? このへんは別に特別なものはいらんな UNIXアカウント+sshだけでおk > 複数人で共有しているリポジトリの管理どうやってんの? リポジトリの管理って具体的に何? > 不正(質の悪い)コードのマージをどうやって管理してるの? > コミットされたコードに対するコメントやレビューどうやってんの? > 人が数人集まるってことは、 > コミュニケーションが生まれるってこと。 > gitだけでどうやってコミュニケーションするの? Gitはバージョン管理ツールであって、 コミュニケーションツールではありません
例えばこんな場合。 ローカルだけで開発していたら他人の進捗状況がわからない。 だから中央リポジトリは必要。 中央リポジトリにあるものをだれでも勝手に 消したりできたらまずいから権限の概念が必要になる。 ただし管理者のみが中央リポジトリを作成できるなら 中央リポジトリを作るために管理者にお伺いを建てないといけなくなる これは良くない。 理想は誰でも中央リポジトリをサクッと作れて、 権限がある人だけが消したりできる。 プロジェクトに参加者を登録して、参加者に 閲覧専用権限を与えたり、コミット権限を与えたりしたい。 コミットに関するコメントを付けたい。 それらを自動的にメールで通知したい。 ということで、gitだけではできないことを行うために サーバーが必要になる。
>>755 > Gitはバージョン管理ツールであって、
> コミュニケーションツールではありません
だから、git以外のgitサーバーを使うって話になるんだろ?
こっちは最初からgitではない物=特別なものを入れるって話をしてるんだが?
お前は、git以外に入れる必要はない=gitでコミュニケーションも
できるっていいたいんだろう?
なんで「Gitサーバをインストールする」が コミュニケーションツールを導入するまで飛躍するんだよwアホかw
>>756 誰でも中央リポジトリを作れるのと権限がある人だけが消せるを両立させるのは難しいかな
閲覧専用権限もちょっと難しい
でも質問の「数人程度の単一プロジェクト」ならこんなのいらんだろ
>コミットに関するコメントを付けたい。
>自動的にメールで通知したい。
全部メールでやればいい
それ以外はUNIXアカウント+ssh+gitだけでできるから
>>761 いるかいらんをお前も決めるな
おれはできると可能性を述べているにすぎないぞ
単一プロジェクトでも 自分用ツールを皆と共有するために リポジトリ作りたくなるし、 gitサーバーがあったほうが柔軟で便利だろ。 メール? 送信するのが面倒だろ。 どうやって掲示板のやりとりみたいなものを 数人でメールでやるんだ? できるのと、簡単に便利にできるのとでは わけが違う。 入れないほうがいいという理由がない。
>>762 実現可能 かどうかは論点じゃないんだよ。
実現可能かどうかで言えば
ソースコード管理もディレクトリコピーで実現可能。
そういうことじゃないだろ?
どれだけ簡単にできるかが重要なんだよ。
頑張ってgitサーバー相当のことが出来るようになりました!
は意味が無い。最初からgitサーバー使えばいいと言われて終わり。
>>764 自分用ツールを皆と共有するためにリポジトリ作る用途なら
UNIXアカウント+ssh+git で全然問題無いです
>766 UNIXアカウントが必要な時点で問題ありだろ。 お前のコードにアクセスするために、 お前のマシンに俺のアカウントを作らなければならないということだ。
>>765 全然頑張る必要とかないよ?
gitアカウント作ってユーザーをgitアカウントと同じグループに所属させておく
gitアカウントで適当なディクレトリ作って
chmod g+rws ディクレトリ; cd ディクレトリ; git init --bara --shared
この程度で「ssh://UNIXマシンのホスト/ディクレトリ」でアクセスできる中央リポジトリが完成
denyNonFastforwardとdenyDeletes辺りを設定しておけば、
コミットを「消す」ことはできなくなるから致命的な悪さをされる心配も無い
なんでもExcelでやろうとする奴と 同じ臭いを感じるなw
>>767 中央リポジトリをつくるマシンにアカウント作るだけです
>>768 それをユーザー全員がやらないといけないよね。
gitサーバーがあれば、そういう面倒な作業なしに
バンバン共有リポジトリ作れるし、
もっと複雑な権限管理もできるし、
ダッシュボードから今何が起きているかを把握できるし
その上コミュニケーションツールまでついてくる。
超便利なツール VS 頑張れば同じことが出来る。あれしてこれして・・・
ご苦労さんw
>>770 じゃあ、次にプロジェクトを複数作って、
プロジェクトごとに参加者が違います。
同じユーザーでもプロジェクトが違えば
見れたり見れなかったり書き込み権限があったりなかったりします。
ってときはどうするの?
>>771 いや、これをやるのは中央リポジトリをつくる人だけ
>>772 だから単一プロジェクトでの話をしてるんだろ?
参加者が違うプロジェクトをつくるならグループを追加すればいいよ
>>773 「中央リポジトリを作る人」がいるってのが
そもそも問題。権力者ってのはなるべく排除するべき。
共有の中央リポジトリであれば
管理者一人でもいいが、
個人が中央リポジトリを作りたい場合もある。
個人が作った中央リポジトリは、
管理者を除いて、個人のみが管理できる。
その個人が許せば、他のユーザーにも閲覧権限や
管理言言を与えることも可能。
開発をしていればこういうことはやりたいと思うのが普通。
>>769 逆だな
サーバ必須とかのやつからExcel使いと同じ臭いを感じる
もっと臨機応変にやってくれよ
>>774 単一プロジェクトと言われたからといって、
本当に単一プロジェクトでしか通用しないテクニックを
だすのは愚か。
> 参加者が違うプロジェクトをつくるならグループを追加すればいいよ
で、閲覧権限と書き込み権限はどうするの?
人によって権限を与えたり与えなかったりしたいんだよね。
>>776 あのー?
最初からおすすめのgitサーバーの話をしてるんですが?
お前、柔軟性ないね。
素直にgitサーバーの話をスレばいいじゃんか。
もしかして、知らないの?って思われるよっていうか思ってるw
>>777 閲覧専用権限は難しいと言ってるだろ
書き込み権限はグループに追加するユーザで制御できる
>>778 だから、おれとしては、その程度の規模でUNIXアカウント+sshの使用に抵抗が無いならという条件で、
UNIXアカウント+ssh+gitをオススメしてるんだよ
お前が別のものをオススメするのは勝手だ
>>779 難しいならだめじゃんか。
なんで、githubのように
優れたツールがあるのに
それを使わないの?
gitサーバーを使いたくないって話をしてるんじゃないんだよ。
gitサーバーを使いたい。おすすめは?って話をしてるんだよ。
>>778 サーバ立てなきゃ絶対ダメとかのどこが柔軟性なんだよ
>>780 だから俺は、お前のおすすめは
おすすめじゃないって話をしてるんだよ。
だってコミュニケーションツールもついてないじゃん。
>>781 それが必要ないなら問題ないだろ
選ぶのは質問者だ
>>782 サーバーを建てないという条件で
頑張るお前よりはよっぽど柔軟。
どっちが選択肢が多いかね?
>>784 質問者は既にgitサーバーを選んでいる。
今の質問はどのgitサーバーがオススメかだ。
>>783 俺のおすすめは、お前にとってはおすすめじゃないだけだろ
俺のおすすめは変わらんよ
どういうものなのか説明はした
実際おれは数人程度でリポジトリを共有する目的でコレを使ってる
選ぶのは質問者
>>787 質問がどのgitサーバーがオススメか?である以上
gitサーバーを答えなければならない。
お前の答えは、質問に答えていない。
論外なんだよ。
なんかよくわからんけどこえーよ
IDないからだれがだれだかわからなくてめんどくせーなおい
まあ
>>790 のURLを読めばよい
そこは両者オススメみたいだし
Gitって循環参照とか出来るの? コンピューターA ↑参照 コンピューターB ↑参照 コンピューターC ↑参照 コンピューターA こんな風にしたらどうなる?
>>775 開発したことがあるならなおさら中央リポジトリの重要性を痛感するはず
>>793 コンピューターっていうのは特定マシンのリポジトリの意味かな?
git checkout hoge git merge master git checkout foo git merge hoge git checkout bar git merge foo git checkout master git merge bar
ブランチのことか 別に問題ないよ ただその四つのブランチが共通の祖先のコミットをもってないと困ると思うが
一人で使うなら好きにしなさい 複数で使うならgitoliteにしなさい
>>756 その文章の中で
>gitだけではできないこと
ってどれなの?
何だか知らんがそんなにgitが嫌ならsvnでも使っとけバーロー
伸びてんなー
gitだとバージョン番号つけられないね
タグにバージョンつけてるけど
>>803 おもしろそう
これを使えば$Id$がつくれるのかな
9月入った辺りから伸びが凄いな ビックウェーブ来てる?
来てますがうちはビッグウェーブに乗るというより押し流されてますよ 開発者の人数だけグラフがスパイラルしているのはなかなかキレイです
空のリポジトリから作り始める時もmasterじゃなくて適当なブランチ作ってやり始めるのが筋?
いいえ
城戸君は新人Webコーダーで聞き間違えが多いタイプ 田中君は人のコードをパクル様なことをするタイプ こういう二つのタイプの人間がいるとします この二人にプロジェクトを任せるのですが 城戸君は聞き間違えが多いので本来Aを作るところを間違えてBを作ってコミットしました そのあと田中君はググって見つけたブログのコードを自分の担当のBにコピペしてコミットしました こういう場合はどうしたらいいでしょうか?
> Bにコピペ これはBを全部書き換えてしまったのかな? それともBの一部を書き換えたのかな?
Bのファイルをお互いいじったところはコンフリクトして、 かぶってないところはコンフリクトしません たぶん
>>810 マージするためにgit使ってるんだろ。
マージしてしまった後に、 城戸君はBをAにどうやって直すべきかって話じゃないのか?
城戸って珍しい名前だな じょうど じょうと しろと しろど 変換に出てこない
城戸=キド
逆に、城戸をコピーして選択状態にして変換キーでもいいんやで
正しいAをマージするとたぶん田中くんの修正がコンフリクトするから それをどうするかってことかね? コンフリクトしない場合でもやばい感じにマージされる可能性はあるかもだけど どっちにしろ田中くんと城戸くんで相談だよね めんどくさければ田中くんの修正がなかったように正しいAをマージしてしまって 田中君にはAに合わせて直した修正を改めてコミットしてもらえばいいかも?
>>810 を読む限り、マージする前の話でしょ
あとは、本来出来上がってるはずのAができあがっておらず、どうしたらいいんだろうっていう問題だよ
城戸君は間違えが多い、一方の田中君はどっかから適当に拾ってくる
納期が迫っている中さあどうしよう?
納期のことは忘れたほうがいいよ。 理想的なやり方を追求すればいい。 納期の話を含めると、ダメなやり方が答えになるから。
gitがどうとかいう以前の問題のような
そんな使えない奴はクビで
マージする必要あるのか? 二人して同じもの作ったのなら、どちらかを破棄するだけだと思うのだけど。。。 たぶん、Bを破棄して、田中君がAつくるんじゃね? 昼ゴチって感じで
城戸君がBを revert するだけで済む話に聞こえるけどそうじゃないのかな
作業がなかったことになったら給料泥棒じゃん
828 :
デフォルトの名無しさん :2013/10/11(金) 00:11:06.14
給料も無くせばいいだろ
829 :
710 :2013/10/11(金) 02:25:32.11
>>827 ぐだぐだのコードなら、ないほうがまだマシ。
.gitと同じディレクトリにsampleディレクトリがあるんですけど このディレクトリを除外したい場合githubで.人様のgitignore見てたんですが /sample sample/ /sample/ って3通りに書き方を見るんですがどれが正しいでしょうか?
たすけてくださああああああい これで1版最初にコミットしたところのソースコードが見たくて git checkout ランダムな文字 ってしたんですが git logをみたら戻った所以降のコミットのログがありません! git reflogでランダムな文字列を表示してまた git checkout ランダムな文字 で戻れました こういうふうに過去のソースコードがみたくて一時的に戻したい場合はどうやるのが正しかったのでしょうか?
git checkout master とかブランチ名を指定すればどこからでも戻ってこれるんでない? あとは git show 0123456789abcdef:path/to/filename みたいに書けば特定のコミット時点の特定のファイルをいちいちチェックアウトせずに表示できたと思う
Git for WindowsのGit Bashで
$ mkdir test
$ cd test
$ git init
$ git config user.name "FOO bar"
$ git config user.email "
[email protected] "
$ echo "*.exe" > .gitignore
$ git add .gitignore
$ git commit -m "initial commit"
$ git branch mybranch
$ git checkout mybranch
$ vim hello.c
$ gcc hello.c
$ git add hello.c
$ git commit -m "add hello.c"
$ ls
a.exe hello.c
$ git checkout master
$ ls
a.exe
という具合にやってみたんだけど
mybranchブランチでコンパイルして出来た a.exe がmasterブランチに移っても消えなかったんだけど
mybranchブランチで作ったファイルがmasterブランチでも参照できるのは何でなの?
add されてない未管理状態のファイルは何もせずに放置される
>>835 マジか、dクス
じゃあブランチは別のフォルダで作らんとダメなのか
837 :
デフォルトの名無しさん :2013/10/12(土) 01:32:43.62
>>836 なぜそうなるのか分からん
普通は同じフォルダでいいんじゃないの
別のブランチ作ってそこで作ったファイルと競合おこさないの?
>>839 a.exe の事だよね?
$ echo "*.exe" > .gitignore
$ git add .gitignore
$ git commit -m "initial commit"
ここで何してるの
つまり、競合おこしたくないファイルはバイナリだろうとバージョン管理に入れろってこと? わかった、そうする
普通、make cleanとかするだろ。
843 :
デフォルトの名無しさん :2013/10/12(土) 11:28:32.72
権限を750に設定したいphpとhtmlの環境をgitで管理するのってどうすればいいですか? テストサーバのリポジトリ---gitリポジトリ---本サーバのリポジトリ みたいな環境で、テストサーバで750でファイルを作成して、コミット、プッシュする そして、本サーバでプルしたら、別ユーザにも実行権限が付いてしまう 直接、実行環境にプルできたら楽でいいなって思ったんですが デプロイ用のスクリプト作って、プルした環境からサーバの実行環境に入れなきゃだめ?
>>843 gitはユーザを区別しない実行可能フラグしか管理しないからデフォルトでは無理じゃないかと
post-receiveフックを使えばpullのときに任意のスクリプト走らせられるから、お望みの動作をするスクリプト書けばいいと思うよ
複数人で作業するときって別の人が編集するファイルを編集したらどうなりますか?
>>846 別の人が編集する前に編集され書き換わります。
git clone リポジトリのurl ってやるとクローンで着ますが、 存在しないurlだと失敗しますよね なので、そのリポジトリが存在するかしないか(もしくは、cloneで取得できるかできないか)をチェックするだけのコマンドってありませんか?
ls-remote
git://github.com/〜/〜.git とかのことだよね?いま試してみたらできたよ。
gitignoreに /test/ って書いたのに testディレクトリの中のファイルを編集してからgit statusってやると modified: test/test.html modified: test/test2.html って表示されてしまいます! このままaddしてcommitしたらtestディレクトリのファイルも記録されちゃいますよね!?
.gitignoreに ./test/ って書けよ
>>853 .gitignoreは既にリポジトリで管理対象になってるファイルには効かないよ
ファイルを管理対象にするまえに.gitignoreを書かないとダメ
管理対象から外したいならgit rmしてコミットすれば
その後はそのファイルをいじってもgit statusには出てこなくなる
ちょwwwwうはwwww git rm test/test.html ってやったらファイルそのものが消えましたwww つられました〜〜〜
>>857 おう悪い
消さずに管理対象から外すコマンドは忘れた
とりあえず消える前のがコミットされてるんだから
checkoutで復活させてくれ
>>857 --cached
ってか、そんな基本しらねーのかよ本1冊読めよ
テストファイルってgitで管理するべきですか?
861 :
デフォルトの名無しさん :2013/10/13(日) 21:11:16.71
自動テストを行うコードのことならyes
>>860 テストファイルが何だかわからないが、Junitとかを使ったテストプログラムのコードとかなら、ソースコードとバージョンを合わせないとだから、管理すべき。
863 :
710 :2013/10/13(日) 21:33:34.46
>>863 結果という成果物が、ログ、オブジェクトに関わらずgitの管理内に入ることはない
テストの結果なんて「OK」と(ほか数行)しか書かれてないわけで保持するという発想はなかったな
failばっかりの状態からバージョン管理をはじめるなら、 OKが増えていくのを見てニヤニヤするためにバージョン管理するのは有りな気がする いつどのテストが通るようになったかわかるし 全部OKじゃないとコミットを許さないなら、管理する価値はないでしょ
再生成できるものをリポジトリに入れるのは違和感があるので、指定されたコミットをチェックアウトしてビルド・テストを実行するスクリプトを作ろう リポジトリに入れてもいい成果物は再生成が面倒or時間がかかるものという認識だ
このテストいつ通るようになったっけ? で全履歴を二分木探索でテストスクリプト走らせるとなると、結構な時間がかかるはず リポジトリに入れるのが気持ち悪いなら、git notesにでも入れときゃいいんじゃね
869 :
710 :2013/10/13(日) 22:58:59.11
>>867 うちでは、出荷版とかは入れてる。
再作成しても同じバイナリにはならない環境があるからねぇ。
JavaだけどバイナリはVCSではなくてArtifactoryで管理している。 メインブランチと開発ブランチ、Jenkinsが自動でビルドとテストをして合格すれば Artifactoryにプッシュする。
871 :
デフォルトの名無しさん :2013/10/13(日) 23:06:16.00
リビルドするたびに、バイナリ変わる環境なんて メモリエラーとかハードが壊れてるだけ
873 :
710 :2013/10/13(日) 23:17:17.19
>>871 ビルド日時を埋め込むシステムなんて珍しくないんだが、無知ってこんな分かりやすい餌にも食いつくんだな (w
874 :
デフォルトの名無しさん :2013/10/13(日) 23:34:21.57
珍しくないというか、PE(Windowsのexe)にもあるよね。
875 :
デフォルトの名無しさん :2013/10/13(日) 23:40:33.27
それはそういうソフトだな。 ビルドするたびに、バイナリ変わるビルドツールなんて コンパイラとしておかしいわ
876 :
デフォルトの名無しさん :2013/10/13(日) 23:42:28.94
PGO使うとバイナリが変わるというか、変えるために使うんだよね。
877 :
710 :2013/10/13(日) 23:44:51.06
>>875 > コンパイラとしておかしいわ
素人さんはそう言ってりゃいいんだろうけど...
878 :
デフォルトの名無しさん :2013/10/13(日) 23:47:53.23
いったい、どこのマイナーなツール使ってるんだかw
879 :
デフォルトの名無しさん :2013/10/13(日) 23:48:50.76
素人にここまで浸食されてるのってこの業界だけだよね。 大工さんと日曜大工のお父さんじゃだいぶ差があるのに。 金返せと言われても文句言えない。
880 :
710 :2013/10/13(日) 23:57:10.19
>>878 自分の環境が全てと思ってる奴 ≡ 素人
>>880 さすがgit玄人ですね
かっこいい^^
ここで喧嘩しないでよ
>>878-879 とか単なる煽りあいでしょ。せめてgit絡めて話して
git commit
>>710 -m '荒らしてんなボケ'
OSのヘッダファイルはgitで管理するべきだろうか? ヘッダファイルが変わるとバイナリ変わっちゃうんだよね
>>884 ビルド環境はcloneした先で構築すりゃいい
ソース上で管理するなら、それぞれmake -fのターゲットファイルを用意する
READMEに情報かいてるのもあるかな
886 :
885 :2013/10/14(月) 01:23:28.84
無視してください
>>863 テスト結果はcommitしない。
欲しくなったら、その版をcheckoutしてまた作ればいいから。
>>868 二分探索なら履歴の数はそんなに関係なさそうだから、一回のテストが遅いのかな。
そんな時間かかるのに毎回入れるとなると、commit時に時間掛かりそう。たまにしかpushしないリポジトリでのみとっとけばいいのかな。
ナイトリービルドとかの時のテスト結果を上書きしないで、とっておいたほうが良さそう。
テスト結果のcommitはしたことがないけれども、するにしてもCIツールからだと思うな。 開発者マシン上でのテスト結果なんて信用できないでしょ。
日付と時刻を付けたファイル名で毎回保存すればいいだけ
>>887 「そのときのテスト結果」はとっといたほうがいいぞ。
gitに入っているのが環境の全てと言い張れるほど自信ないし。
とっとくとしてもコミットには含めないかな コミットIDと対応づけてどっかに保存だ
ID発行して、品保のハンコつきで、鍵付きロッカーに保存
単純に git notes を使うのではダメなのか?
gitで画像を管理場合、画像の比較ってどうやるの?
gitでaddしてcommitするとき gitで現在のファイルの内容が記録されていくじゃないですか この記録される内容っていうのはファイルの内容全てなのか、直前のファイルの内容からの差分なのか、どういうふうに岐路kうされていうのですか?
899 :
デフォルトの名無しさん :2013/10/14(月) 10:36:07.07
>>896 gitの場合は、ファイルの内容丸ごと。
gitの場合ってことは、、、、CSVとかMがつくやつ(名前忘れた)とかSVNは違うの?
901 :
デフォルトの名無しさん :2013/10/14(月) 10:38:08.39
違うソフトだけど 出来ることは、だいたい同じ
昔のバージョン管理ツールは差分だけを保存してたよ
>>894 git notesに複数のディクレトリに格納された複数のファイルとかも添付できるん?
git logの表示の邪魔にならない?
904 :
710 :2013/10/14(月) 10:42:21.11
>>892 どうせどこかに保存するなら、SCM に保存する。
(なんでこの人ずっとコテつけてんの)
差分だけ管理するタイプだといろいろ処理が増えるからダメだよな Gitは全文保存するから賢い
>>904 バージョン間の差分とかチェックするときに邪魔じゃん
すいません、C:\site\index.htmlを10回コミットしたんですけど 3回目にコミットしたこのファイルの内容だけを取って来て C:\backup\index.hmlに保存するコマンドってありませんか?
マージしたりチェリーピックしたりパッチ作ったりするのにもいちいち邪魔だな
git checkout HEAD~7 -- C:\site\index.html copy C:\site\index.html C:\backup\
911 :
710 :2013/10/14(月) 10:56:59.55
>>911 二つのコミットを指定して差分をとったら、
そのコミット間のソースの差分だけが出てきて欲しい
テスト結果をコミットに含めてたらテスト結果まで全部でてくるだろう?
えええ、元のファイルの内容を過去のに戻さないとダメですか?
はい
そんなことはない
git show HEAD~7:(リポジトリ内パス)/index.html > C:\backup\index.hml でどうだろうか Windowsのコマンドプロンプトでgit showをリダイレクトしても改行コードは変化しなかったような気がする (core.autocrlf=falseでLFなファイルしか書かないうちの環境のせいかもしれんが)
917 :
710 :2013/10/14(月) 11:19:26.43
>>912 ソースと違う所に入れるでしょ? 普通。
>>917 いちいち日本語がわかりにくいんだが
ソースと違うリポジトリという意味かね?それなら別にかまわないよ
919 :
710 :2013/10/14(月) 11:39:51.47
(だから、何でこの人ずっとコテつけてんの)
>>919 差分取るときテスト結果のディレクトリ以外を毎回指定するのかよ馬鹿すぎるな
マージするときはどうしてんの?Fast-Forwardじゃなければほぼコンフリクトするだろ?
レス乞食は無視した方がいい
>>891 なんか環境が足りないバグなら追加してcommitすればいいんじゃない。ある環境でしか通らないテストなら、余計に保存してそれを信じる意味ないし。
>>920 コテつけるのも付けないのも自由だよ。
お前が言った所で、お前の願いはかないませんw
ところでフォルダって何? ここgitのスレだよな?
すいません複数人でpushするときって masterブランチの内容をpushするべきでしょうか?
逃げたか
928 :
710 :2013/10/14(月) 11:57:09.51
>>921 > 差分取るときテスト結果のディレクトリ以外を毎回指定するのかよ馬鹿すぎるな
おいおい大丈夫か?
テスト結果を通常のソースとかを管理しているフォルダと違うフォルダに入れるだけだろ?
>>928 レポジトリ直下に複数の管理対象ファイルやディレクトリを置く場合がある
それにそもそも指定が必要な手間をかけるの自体が馬鹿すぎるわ
それでマージはどうしてるの?
>>930 自分の知らないことは馬鹿としか言えない人なんだな、頭固いんじゃね?
あと、しきりにマージって言ってるけど、普通に考えて結果に対してマージが発生するような運用はしないと思うんだけど...
何をそんなにしつこいのかわからん マージしたらどうせテストしなおしなんだから、テスト結果ファイルも作り直しでしょ 「マージ作業」をする必要がない
>>931-932 まじで意味がわからないんだけど?
どういうタイミングでテスト結果をコミットする運用なんだ?
マージで問題にならないってことはローカルリポジトリでテストした結果は
コミットしないようにするんだよね?
もしかして1人で開発してるんじゃね?w
テスト結果もマージすりゃいいだろ? たかがソースコードのバックアップに 何をごちゃごちゃ言ってるのか。
>>933 だーかーらー、テスト結果ファイルがコンフリクトしたらテストを走らせるだけでしょ
っていうかコンフリクトしなくてもテストは走らせるよね?
>>935 だれかがテスト結果を含めてコミットしたブランチを
自分でもテスト結果を含めてコミットしたローカルブランチにマージしたら
テスト結果なんて自動マージできないから(されても困るが)コンフリクトだろ?
そんな物の解消いちいちやってられるか
まーじで意味わからん
>>936 テスト済みであってもコンフリクトするだろ?
マージがコンフリクトで止まった状態でテスト走らせてその結果使って
コンフリクト解消操作してマージを完了させるわけか?
マジですかw
こいつ、まともにgit使ったことないんだろうな
たぶん基本Fast-forwardな状態でマージが進むような使いかたしかしてないんだろ お一人様でやってるとか
コンフリクトを修正する方法に慣れたいので git initからコンフリクトして、コンフリクトを解消するまでの手順を教えてください
まあ一人でソースのバックアップ目的でgit使うなら何ぶち込んでも問題にならんわな
一人で使ってるけど、どこ修正したかをgit statusとかgit diffで頻繁に確認しながら進めるんで、 余分なものは絶対管理から外す
>>933 > まじで意味がわからないんだけど?
テスト毎にコミットする人決めときゃいいだけでしょ?
おまえら、まさかマージした時に 自動的にコミットとかしてないよな? コミットする前にテストは必須。 テストを実行してから OKならそのテスト結果毎コミットする。 これでなんの問題が有るんだよ?
git statusにコミットしないファイルが出てきちゃう環境な奴は二流
>>947 これってどうふうにしたら再現できますか?
950 :
デフォルトの名無しさん :2013/10/14(月) 13:43:26.98
結果が全パスなら保存する価値がないし(通ったぞという証拠?) 全パスでないならpushすべきでない、と思った。
>>949 ホームやリポジトリのgitignoreを適切に設定していない場合におこります
>>946 「マージした時に自動的にコミットするな」が意味不明
gitでマージするときには
マージコミットができるかFF状態でHEADを移動するかどっちかだよね?
>>950 > 通ったぞという証拠?
テスト実施日時とかの情報もあるよ。
>>953 コミット時には必ずテストすべきなんだから、コミット日時がテスト実施日時なのでは?
955 :
デフォルトの名無しさん :2013/10/14(月) 13:59:53.25
gitなら、ビルド通るぐらいの確認でコミットする pushする前には、それなりのテストをするけど
>>954 テストって言っても結合テストとか、システムテストとかもあるでしょ。
jasmine使ってテストが書かれていてgithubに公開しているのオープンソースを何でもいいので教えてください
もはやGitとは何も関係無いな
すいません書き込むスレまちがいました
git for windows がバージョンアップされましたよ
>>946 ローカルではコミットはCTRL+S連打レベルでガンガンするよ
上流にはテストに通ってから入れる
CTRL+R?
端末出力の一時停止? Emacsでインクリメンタルサーチ?
素でわからんかった。 皆キーバインド同じだと思ってんのか。
eamcsのキーバインドもWinの推奨ショートカットに変更した
>>964 いまどき端末出力の一時停止なんて有効にしてるやつはおらんよ
えーtelnet(ssh)でしょっちゅう止めちゃってすぐに^Q押してるけどな
一時停止、使う時も間々あるし無効にしたいって感じの機能じゃないな。
:wなら頻繁に打つ、GUIだとcommand+Sだな あ、でもVisualStudioだと代わりにビルドしちゃうわw
MacにいったりWinにいったり忙しいなw 俺もだけど・・・
Macってさ常に最新のGitとかJavaとかgccとか言語やツールが使いたい場合 ソースコードをコンパイルしてインストールしていく形なの? それともWindowsみたいにインストーラーダウンロードして自動でインストールしたり、圧縮ファイルを解凍して自分でフォルダに置いてインストールするタイプなの? それともLinuxでいうyumやaptみたいにコマンド一発で入れられるの?
どうやって入れたかによる 公式のAppStore経由だと自動で通知が来てアップデート コマンドラインツールだと、MacPortsというのがあるのでそれで ソースから入れたらもちろnソースからだし、apt使ってる人もいるみたいね
975 :
デフォルトの名無しさん :2013/10/15(火) 17:15:37.87
最近はHomebiewってのが多いけど、個人的には好かん。
976 :
デフォルトの名無しさん :2013/10/15(火) 17:16:27.71
Homebrew どうやって i を打ったんだ俺
>>973 ・ソースコンパイル
どーにも最新版が欲しいときにはやらなくもない
一応Unixではあるので、(Xが絡まなければ)素直に行けることが多い
・パッケージマネージャ
標準ではないが、有名なのがいくつかある
ちと更新遅かったりもするが、用意されてればコマンド一発でDL&インスコ出来て楽
・アーカイブやイメージからのインストール(オンラインソフトはもちろん、パッケージソフトでもよくあるパターン)
大概.appファイル1個が入ってるので、それを
アプリケーションフォルダにドラッグ&ドロップ。
それだけで標準ランチャにも出るようになる。
アプリケーションフォルダにはダブクリで起動するファイルしか置いてないので
アプリケーションフォルダ自体もランチャ代わりとしても使える。
必要ファイルはその中に内包してるので、移動するファイルは1個でいい。
・きっちりウィザードやインストーラ付き
意外にレア。常駐系や、システムへ変更を加える必要のあるソフトだけ。
・展開すると多数のファイルあって、配置する場所を考える必要があるもの。
稀に。プラグインとか、そういうプラグインの塊みたいなソフトではたまにある。
あ、書き忘れたけどストアからインストールも確かに主流になってきたね
おれみたいなWindowsしか使ったことない人間がいきなりMac使っても混乱しそうだ
>>979 まあ、別のOSだから仕方ないね
逆に純粋培養マカーからすりゃ、解凍して.dllとかの関係ないモン出てきたり
置いた後ショートカットも作らなきゃランチャに出てこんのはワケ分からんと思うぜ
あと…CUIアプリに関しては、Windowsが一番敷居高いぞ
ここはいつから雑談スレになったんだ?
面目ない
>>979 windowsもMacと一緒だろ。app形式がないくらいで。標準でコンパイラがないからソースコードも面倒か。
Linuxの標準でついてるパッケージマネージャが一番楽だ。