X



Git 17

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん
垢版 |
2020/09/02(水) 12:18:30.39ID:XN0SxNMq
ソースコード管理を行う分散型バージョン管理システム、Gitについて語ろう。

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

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

◆前スレ
Git 15
http://mevius.2ch.net/test/read.cgi/tech/1486239735/
Git 16©2ch.net
https://mevius.5ch.net/test/read.cgi/tech/1502726047/
-
VIPQ2_EXTDAT: checked:vvvvvv:1000:512:----: EXT was configured
0871デフォルトの名無しさん
垢版 |
2022/04/02(土) 17:33:56.91ID:y/uyzFp6
>>870
その「更新コマンド」を実行すべきタイミングが分からないんですよ
とりあえずプルすれば、変更されていれば更新されるけど
変更されていなければ更新されない

いちいちメールかなにかで連絡もらえれば、プルするから実害はないんだけど
0872デフォルトの名無しさん
垢版 |
2022/04/02(土) 17:37:22.85ID:OkBLvXjb
git push したらvpsのソースが更新されるようにしたのに、ヒミツ鍵でログインするタイプのvpsに変えたらgit pushでエラーが出るようになったわ
0876デフォルトの名無しさん
垢版 |
2022/04/03(日) 00:33:31.34ID:TSy6KLqO
git reflogを時間指定して実行すると上手くログが取得できないんだが、自分だけ?
git logは普通に動く
0879デフォルトの名無しさん
垢版 |
2022/04/04(月) 18:26:27.90ID:uBqMrhkR
>>876
reflogで表示される時間はその操作が行われた時間ではなくてその操作の結果のHEADのコミットの時間で、reflogの--afterとかによる表示範囲判定は操作が行われた時間に基づいて判定されるぽいから、変な風に感じる?
HEADのコミットの時間でなくて操作した時間をreflogで表示する方法はあるのかな
0881デフォルトの名無しさん
垢版 |
2022/04/05(火) 06:57:58.21ID:qPBzPdZO
>>880
こういうのが居ると無駄なマージ履歴が残る。
コミットまたはプッシュする前にプルしてマージ完了した状態でプルするルールにしてる。
0883デフォルトの名無しさん
垢版 |
2022/04/05(火) 07:02:20.74ID:HDipRGT6
>>881
これはfetchかpullのタイミングの話であって、それとこれとは別の話だよ
それはpull request用のブランチにsquashなりすれば解決することだろ
0884デフォルトの名無しさん
垢版 |
2022/04/05(火) 07:09:17.66ID:LSxkXP/U
squashするとまた意味が変わってくる
無駄なマージコミットを気にするならpull --rebaseするといい
0885デフォルトの名無しさん
垢版 |
2022/04/05(火) 08:27:03.94ID:Tv9hyPpM
内容ごとにブランチを切って、実装完了後にマージしたほうがいい。
こまめにマージする必要あるけど。
0886デフォルトの名無しさん
垢版 |
2022/04/05(火) 08:37:26.26ID:VZWFnuGC
rebaseすると途中のコミットが見たことないスナップショットに化けるから諦めてmergeする派
0890デフォルトの名無しさん
垢版 |
2022/04/10(日) 12:43:00.27ID:gTtQQEaq
今からGitを始めます初心者の質問です。

Gitに設定するユーザー名、メールアドレスと
GitHubのアカウント作成で指定するユーザー名、メールアドレスは
同じものでないといけないのでしょうか?
0891デフォルトの名無しさん
垢版 |
2022/04/10(日) 23:00:07.32ID:TJ08CsNt
ネットでgitをググると
コミットしたらプッシュっする癖をつけようなんて見かけるけど
それなら意味なくね
0893デフォルトの名無しさん
垢版 |
2022/04/10(日) 23:58:14.27ID:ZMrXNR+Y
分散型リポジトリの意味かな?

つーかcommit→pushの流れが癖になるとまずいぞ

develop or masterで作業してるかfeatureブランチをpushすることになる
0894デフォルトの名無しさん
垢版 |
2022/04/11(月) 00:51:42.12ID:1i0W5uZP
>>890
同じにしないといけない
違ってるとGitHub上でコミットとユーザーが紐付かない
なおGitHubのメールアドレスは複数設定できる
0895デフォルトの名無しさん
垢版 |
2022/04/11(月) 01:06:26.04ID:Ip9E4gkF
いつプルすべきなのかさっぱり分からないんだけど
いちいちフェッチして更新されてたらプルなの?
svnの時はフォルダのアイコンが変わるから、すぐ分かったんだけど
gitはめんどくさくてしかたねー
0899890
垢版 |
2022/04/11(月) 07:24:40.88ID:pyEhSslH
>>894
レスありがとうございます。

そうしますと、
複数のメンバーでGitHubの一つのアカウント(リポジトリ)を共有する時の
各メンバーを識別するIDは、どこで指定するのでしょうか?
0902デフォルトの名無しさん
垢版 |
2022/04/11(月) 09:14:16.92ID:1i0W5uZP
>>899
関係ない。各自が自分のGitHub userに設定済みのメールアドレスでコミットすればいい。
GitHub上で制御できるのは「誰がリポジトリにpushできるか」までで、>>900も言ってるがどんなメールアドレスのコミットが含まれていてもpushできる。
たまたまコミットのメールアドレスがGitHub userと同じならGitHub上でそのユーザーがコミットしたように見えるというただそれだけのこと。
0903デフォルトの名無しさん
垢版 |
2022/04/11(月) 14:06:10.85ID:MP0q4WMO
>>899
githubでプライベートリポジトリを複数ユーザで共有する場合は、共有するユーザみんな別々のアカウント作って、誰かが作ったレポジトリに他のユーザを招待して、pushするときにはそれぞれ各ユーザのアカウントで認証された状態ですることになるよね
だから上でもだれか言ってるように、コミットのメールアドレスは認証で使われるわけじゃないから、どんなメールアドレスでもpushできる

しかし、コミットのメールアドレスは重要でないというわけでもなくて、コミット一覧とか表示させたときにコミットのメールアドレスに基づいてユーザ名とか写真を表示したりするので、githubのアカウントに登録してあるメールアドレスをgitの方にも登録しておくほうが良い
0904デフォルトの名無しさん
垢版 |
2022/04/11(月) 20:59:30.97ID:voKtAiO9
>>901
少し上のレスを見ればわかるけど、その質問は「また釣りか」と思われてまともなレスは付かない。
0905デフォルトの名無しさん
垢版 |
2022/04/13(水) 01:15:32.19ID:TZC3qPMK
とある本の不要になったブランチを削除する手順で
@リモートリポジトリの消したいブランチを削除
ASourcetreeのフェッチのリモートで消えた追跡ブランチを消去(Prune)
BSourcetreeの消したいローカルブランチを右クリックして削除
とありますが、@がリモートリポジトリのブランチを削除、
Bがローカルのそれだとすると
Aの手順にはどんな意味があるのでしょうか
0906デフォルトの名無しさん
垢版 |
2022/04/13(水) 02:12:16.50ID:eS/flNB4
ブランチには@リモートブランチ A(リモート)追跡ブランチ Bローカルブランチの3種類がある
文脈によってこれらはしばしば混同されるので気をつけていないと混乱する
@はサーバー側にあり、ABはクライアント側にある
Aは常に@のコピーで、フェッチするたびに@の最新と同期される
だからネットワークに繋がっていなくてもいつでもリモートのログが見れる
「リモートブランチのログを見る」というとき、正確には@ではなくAのログを見る行為を指す
フェッチしていなければ@ABが全て別のコミットを指すこともある
Aを消し忘れると、サーバー側のブランチは削除済みなのに、そのクライアントからはまだリモートブランチが消えていないように見える
0920デフォルトの名無しさん
垢版 |
2022/04/15(金) 18:54:21.17ID:C9bHMdiD
GUIのGitクライアントは面倒だよ
なんて言ってる先輩いるだけど
ほとんどコードは書けなくて、コピペしてそのコピペしたコードの意味も分かってない

そんなので、いくらgitが使えても意味なくね
0921デフォルトの名無しさん
垢版 |
2022/04/15(金) 19:37:30.49ID:h1UMySwV
>>920
何が言いたいのがわからんが、コマンドラインでGitが使いこなせなくて悔しいの?
コードが書けるのとGitを使いこなせるかどうかは直接は関係無いし、コピペとGitを使いこなして目的が達成できてるのならばそれは意味があることだよ
0922デフォルトの名無しさん
垢版 |
2022/04/15(金) 20:07:56.61ID:PiHpabQE
CUIなら同じことを繰り返したり再現するのも容易いし、スクリプトに組み込んで自動化したり本番処理を分けたり他人に渡すのも容易。
GUIも便利だけどCUIにもたくさんメリットがあるのよ
0924デフォルトの名無しさん
垢版 |
2022/04/15(金) 21:35:15.77ID:0DFy/IGY
GUIのgit使おうとしたけどわけわからんくて投げたわ

やっぱコマンドラインよ
0925デフォルトの名無しさん
垢版 |
2022/04/15(金) 23:40:55.23ID:yVftr7r6
GUIもせめて自動実行マクロがあればマシなんだけどな。
OfficeのVBAみたいなやつ。
0927デフォルトの名無しさん
垢版 |
2022/04/16(土) 00:02:24.87ID:gsNTgUrB
コマンドを打ってるだけで仕事してるフリしてる奴いるわ
たかがステージングするのに何分かかってんだよ
それならGUI使ったほうがグイっと終わるだろ
0929デフォルトの名無しさん
垢版 |
2022/04/16(土) 00:17:37.39ID:pQ5jcgqa
CUIだろうとGUIだろうと、どのファイルのどの行をコミットに含めるかは慎重に選べ
ゴミみたいなコミット作ってんじゃねぇ
0930デフォルトの名無しさん
垢版 |
2022/04/16(土) 01:06:24.34ID:dfz3lFMa
>>920
gitを否定しようと思ったけどできなかったんだよね?
だからgitを使ってる人を変わりに叩いて
自己満足してるでしょ?バレバレw
0931デフォルトの名無しさん
垢版 |
2022/04/16(土) 01:08:00.12ID:dfz3lFMa
>>927
CUIのほうがGUIよりも快適だからCUIを使ってるんだよ
文字使えば相手に意味を伝えられるのに
絵を書いて伝えたいなんて思わないでしょ?
0932デフォルトの名無しさん
垢版 |
2022/04/16(土) 02:42:04.04ID:Cn08VBkB
GUIで確認してCUIで実行するのが一番効率良くね?
GUIは一覧性が高いが、作業効率はCUIの方が良い
0933デフォルトの名無しさん
垢版 |
2022/04/16(土) 03:09:40.28ID:+A5PZLb9
st=status -s とか
ll=log --date-order --oneline --graphとか
alias設定すれば一覧性で困ることはないぞ
0935デフォルトの名無しさん
垢版 |
2022/04/16(土) 03:55:07.91ID:MmeJHHfa
道具の方にこだわってる奴って本業は全然できない奴多いよな
この5番、30万だぞってイキってて100程度で回ってるガキ多すぎ宿題
0936デフォルトの名無しさん
垢版 |
2022/04/16(土) 05:50:52.44ID:pQ5jcgqa
道具にこだわらないからCUIでgitなんだろ
GUIのはOSによっては使えない場合もあるしいちいち覚えるの面倒だし
CUIなら設定ファイルちょろっとコピーすればいつもと同じ感覚で使えるし
git使わないって選択肢はもう無しな
gitはもう道具というより共通フォーマットだ
0937デフォルトの名無しさん
垢版 |
2022/04/16(土) 05:56:08.79ID:pQ5jcgqa
>>933
その辺は頻繁に使うんでエイリアスじゃなくて3〜4文字のシェル関数だわ
とくにgit logの方は--pretty=format:〜も指定したいんで手打ちはありえん
0938デフォルトの名無しさん
垢版 |
2022/04/16(土) 10:28:49.22ID:pKuJ7S+c
基本的にCUI派だけどログ出していくつかdiffを見るみたいな操作はGUI使うなあ
これをCUIで高効率でやる手段があるなら知りたい
0939デフォルトの名無しさん
垢版 |
2022/04/16(土) 11:07:45.89ID:gsNTgUrB
>>936
CUIかGUIかなんて問題なのか
どっちでも同じじゃん

やっぱりコマンドをタイプしてる方がカッコいいと思うタイプ?w
0940デフォルトの名無しさん
垢版 |
2022/04/16(土) 11:10:09.03ID:smzxZJvo
>>939
コマンドをタイプするのはかっこいいと思ってしまったから
お前はそんな書き込みをしたんだよね?
0942デフォルトの名無しさん
垢版 |
2022/04/16(土) 11:16:03.64ID:qSyY7sm9
あるある

コマンドを使ってるカッコイイと勘違い
Linuxを使ってるカッコイイと勘違い
ダークテーマを使ってるカッコイイと勘違い
vi emacsを使ってるカッコイイと勘違い
0945デフォルトの名無しさん
垢版 |
2022/04/18(月) 20:18:29.80ID:lvtGJgyq
CUIかGUIかなんてどーでも良いことには一切こだわらず
俺にとって使いやすい方法を採用してる俺様カコイイ
0948デフォルトの名無しさん
垢版 |
2022/04/19(火) 23:15:59.06ID:fQcWHs5l
プルリクって要る?
製品名出せば誰でも知ってるソフトの開発でも
目クラマージだぞ
正直、いちいちプルリク出すくらいなら、そっちでマージしてほしい
権限考え直してほしいわ
0952デフォルトの名無しさん
垢版 |
2022/04/21(木) 15:42:47.36ID:Ex423fK8
先輩「CUIのほうがgitの機能をすべて使えるからいいよ」

おれ「pullするときにディレクトリを指定するのは、どんなコマンドを実行すればいいですか?」

先輩「git pullしかやったことないから分からない」

おれ「・・・」
0954デフォルトの名無しさん
垢版 |
2022/04/21(木) 18:49:26.99ID:BFaC4LhO
ディレクトリを指定してpullする機能なんて無いし
pullに引数指定しなければいけないような状況はfetchとmergeを使うから、おれもgit pullの引数有りの挙動は把握してない
0955デフォルトの名無しさん
垢版 |
2022/04/21(木) 18:55:10.99ID:Ex423fK8
おまえらって本質がわかないのか?

pullかどうかなんてのは本質でない

git hoge

でも論理は同じ
0956デフォルトの名無しさん
垢版 |
2022/04/21(木) 19:16:46.07ID:KtzHzoax
ちょっと例えがアレだったね
シニカルなことを表現するときはバシッと一発で決めてかないとこういう残念な雰囲気になる
それもまた世のことわり
0957デフォルトの名無しさん
垢版 |
2022/04/21(木) 19:27:25.31ID:BFaC4LhO
CUIの方がgitの機能がすべて使えるのは正しい
CUIで使う人が全てのコマンドのオプションを知ってる必要なんてない

CUIで使うのを難しく考え過ぎじゃないかな?
どのgitコマンドで何ができるかを把握できてれば十分で、細かい指定は大雑把に覚えてればいいよ
良く使う操作は短いエイリアスやシェル関数にしてしまうし、普段あまりやらない操作はコピペでもいいし、man見て調べればいいし、いまのシェルは履歴も補完も使いやすいからgitの長いオプション名なんて覚える必要も無い
0958デフォルトの名無しさん
垢版 |
2022/04/21(木) 19:27:50.71ID:BFaC4LhO
別にCUI/GUIに限らないけど、どのgitコマンドで何ができるか何が起こるかを理解できているのが重要
gitのコマンドは後戻りできるものが多くて、その方法を理解できてると楽に使える
後戻りする系の手段はあれこれ用意されてるけど、CUIの方が充実してるかな
0960デフォルトの名無しさん
垢版 |
2022/04/21(木) 21:34:43.05ID:F4v8aJSe
git pull はコンフリクトで失敗することがあるからボタン一発で済むとは限らない
0963デフォルトの名無しさん
垢版 |
2022/04/22(金) 00:44:19.39ID:a+ReXgZI
ブランチが必要な理由が分からない
リモートからクローンしてきている時点で、origin/masterとは別のリポジトリが個々人に存在するんだし
コミットも個々人のリポジトリに対して行うわけでしょ

一度もブランチ生やしてなんて一度も指示されたことないわ
0964デフォルトの名無しさん
垢版 |
2022/04/22(金) 02:04:37.85ID:/nIvhavJ
ブランチがないとお互いのコミットを観測することができない
人の変更を見ようと互いにpush+pullすると常にmergeが伴うので、いわゆる観測者効果みたいな面倒くささが生まれる
プロジェクトの規模やリリースの複雑性が増すにつれてより困る
よくある例では、次バージョンの開発を初めている人がいるときhotfixを出せない
featureブランチのpushはオアズケを命じられて、その間ソースレビューも滞る
ブランチをforkに置き換えても同じ
0965デフォルトの名無しさん
垢版 |
2022/04/22(金) 09:52:33.39ID:ZbT6iK7O
各個人のGitHubアカウントにforkしてリポジトリ間のpull requestでマージしていく流派も存在する
本来のGitやGitHubの想定する使い方としては正しくてOSS文化的にも好ましいやり方ではあるんだが、企業での開発ではほとんど採用されない
単一のGitHubリポジトリで中央集権的に管理した方が楽だからね
0966デフォルトの名無しさん
垢版 |
2022/04/22(金) 12:20:17.30ID:dVlUoLXX
AからA'とBの2つを作りたくなったときって、
ブランチなしでどうやるんだろうな
0967デフォルトの名無しさん
垢版 |
2022/04/22(金) 12:30:42.99ID:wri6W8iQ
>>963
ブランチは「実装していること」を表すので、複数の機能を並行して開発するときは必須。
よくあるのは
・通常の開発版とリリース版/デバッグ版を分けて、デバッグリリースを早くする&開発版への取り込みを管理しやすくする
・開発する機能ごとにブランチを用意して、互いの干渉を減らす&マージをやりやすくする
あたり。
0968デフォルトの名無しさん
垢版 |
2022/04/22(金) 14:20:44.25ID:QpAASndC
自分のアカウントにforkするスタイルの開発しか経験ない人が
単一GitHubリポジトリ運用な会社に入ってforkして怒られるのはGitHubあるある
レス数が950を超えています。1000を超えると書き込みができなくなります。

ニューススポーツなんでも実況