Git 17

レス数が900を超えています。1000を超えると表示できなくなるよ。
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
2022/01/27(木) 23:05:55.20ID:5JD4ntnW
「Git 2.35」が公開
https://mag.osdn.jp/22/01/26/225600
2022/01/29(土) 22:24:24.64ID:DKHpcK/K
Git v2.35.1
2022/02/04(金) 16:36:05.63ID:57NC5giI
Git 日本語翻訳チーム
https://github.com/vargaspeniel/git-l10n-ja
845デフォルトの名無しさん
垢版 |
2022/02/04(金) 16:53:15.37ID:ldQUlQ88
>>844
gitを業務で使われている方は翻訳に参加してください
846デフォルトの名無しさん
垢版 |
2022/02/08(火) 12:18:02.21ID:nuxork7Z
ウクライナのGitLabがやばいな
2022/03/16(水) 08:10:03.07ID:3iPp8Jr+
ゲイツもgit 作者も ワクチン派=ナチス
2022/03/20(日) 18:56:58.51ID:oCBKTdlK
すみません、git pushをこっそりキャンセルしたく
$ git reset --hard HEAD^; git push -f origin HEAD をしたのですが
To prevent you from losing history, non-fast-forward updates were rejected.
と言われてpushが失敗します。
もしかしてリポジトリの設定でこういう強制pushが禁止されていたりしますかね?
2022/03/20(日) 20:08:48.92ID:pStA9jik
サーバー側の receive.denyNonFastForwards の設定で禁止されてる
2022/03/20(日) 20:17:36.65ID:XwFj+GPH
>>848
git push --delete 〜 でリモートブランチ消してpushしなおせばまだワンチャンある
2022/03/22(火) 00:18:15.54ID:G4hvFEyv
強制pushまだ禁じてるところあるんやね
2022/03/22(火) 08:24:32.98ID:OaCGWLhd
馬鹿がいるんだから当たり前やろ
2022/03/22(火) 15:19:11.35ID:Oh3PkPXA
ブランチにアクセス権を設定できるサーバなら、メインのブランチにはプルリクエスト処理する人だけがアクセス可能にして、強制push禁止と強制ブランチ削除禁止の設定はいらん気もするね
でも本家gitにはブランチ単位のアクセス権は無いよね確か
2022/03/22(火) 18:39:39.96ID:GWInnMJp
>>848
プロジェクトメンバーに周知すればいいんでないの?
2022/03/25(金) 05:31:45.01ID:VoO+G8uZ
こっそりと周知、ってのは難易度高いな
2022/03/25(金) 07:14:27.74ID:iMzzdMMk
こっそりする必要はないでしょ
2022/03/30(水) 21:00:41.82ID:pZIqlelO
pullする前にどれが変更されているか知ることは出来ないの
2022/03/30(水) 21:03:54.04ID:sFfsK7BI
git ls-remote
2022/03/30(水) 21:50:58.83ID:sIJSREW7
fetch
2022/04/01(金) 00:22:46.86ID:46G1puQR
totoiesegit使ってんですけ、コミットしただけでチェックアイコンに変わるんで
pushし忘れることが多いんですけど、区別できないんですか?
2022/04/01(金) 04:32:18.73ID:w7Dm7PZW
>>860
うん
2022/04/01(金) 05:21:04.10ID:vPqr4MnO
尊いーぜgit
ごめん言ってみただけ
2022/04/01(金) 08:03:05.39ID:4o646iU1
Gitsだぜ
すいもあまいもー
2022/04/01(金) 10:30:17.09ID:L8R+vRlu
トータス使うよりSoucetree使う
2022/04/02(土) 16:17:20.40ID:y/uyzFp6
リポジトリにあさんが変更をプッシュしたことをいさんはどうやって知れるのですか?
あさんからいさんへメールなりで連絡?
いさんがフェッチなり、プルすれば分かるんですが・・・
2022/04/02(土) 16:43:53.49ID:66/F4m6m
>>865
本来gitで想定されている正しい使い方としてはメールで連絡
今時の普通のチームならGitHubでpull requestを出す
2022/04/02(土) 16:46:06.34ID:eQjRdGtS
共有するリポジトリの置き場所に素のgitを使ってない限り、何らかの通知する仕組みはあるだろ?
素のgitでもスクリプト仕込めばできるけど面倒だな「git hooks 通知」でぐぐれ
2022/04/02(土) 17:04:36.48ID:y/uyzFp6
totoiesSVNの時はフォルダのアイコンが!に変わるから
logを表示させればだれが、どこを変更したか分かるけど
gitの場合、アイコン変わっていないから何時フェッチ、プルすればいいかわからない

こういうもの?
2022/04/02(土) 17:20:12.10ID:66/F4m6m
>>868
Gitでは、同じブランチの上で複数人が作業することは普通しない
2022/04/02(土) 17:22:26.59ID:a7IS8KL2
同じことだよ
TortoiseSVNを使っていても他人の変更が勝手に降ってくることはないぞ
これまでほぼ無意識にときどき更新コマンドを実行してたんだろ
Gitでもそれと同じように無意識にときどきフェッチすればいい
リポジトリが新しかったりローカルが汚れているときにコンソールが赤とか黄色とかになる環境を作っておけばさらに分かりやすくなる
2022/04/02(土) 17:33:56.91ID:y/uyzFp6
>>870
その「更新コマンド」を実行すべきタイミングが分からないんですよ
とりあえずプルすれば、変更されていれば更新されるけど
変更されていなければ更新されない

いちいちメールかなにかで連絡もらえれば、プルするから実害はないんだけど
2022/04/02(土) 17:37:22.85ID:OkBLvXjb
git push したらvpsのソースが更新されるようにしたのに、ヒミツ鍵でログインするタイプのvpsに変えたらgit pushでエラーが出るようになったわ
2022/04/02(土) 17:50:45.78ID:ofyuLHc/
>>871
気になった時fetchすりゃいいんだよ。
2022/04/02(土) 18:18:39.57ID:y/uyzFp6
>>873
1分おきにfetchするアルバイト雇ったほうが工数的にはいいですね
2022/04/02(土) 23:09:26.57ID:ofyuLHc/
変な質問だと思ったがネタだったか。四ね。
2022/04/03(日) 00:33:31.34ID:TSy6KLqO
git reflogを時間指定して実行すると上手くログが取得できないんだが、自分だけ?
git logは普通に動く
2022/04/03(日) 09:55:27.42ID:sNbs7j4z
>>875
釣られましたねw
2022/04/03(日) 11:58:15.04ID:YOg/TQMm
気になったらエッチとな?
2022/04/04(月) 18:26:27.90ID:uBqMrhkR
>>876
reflogで表示される時間はその操作が行われた時間ではなくてその操作の結果のHEADのコミットの時間で、reflogの--afterとかによる表示範囲判定は操作が行われた時間に基づいて判定されるぽいから、変な風に感じる?
HEADのコミットの時間でなくて操作した時間をreflogで表示する方法はあるのかな
2022/04/05(火) 06:52:00.45ID:HDipRGT6
>>871
俺は開発ブランチにcommitした後にmasterをfetchしてる
で、マージすべき内容ならmergeする
2022/04/05(火) 06:57:58.21ID:qPBzPdZO
>>880
こういうのが居ると無駄なマージ履歴が残る。
コミットまたはプッシュする前にプルしてマージ完了した状態でプルするルールにしてる。
2022/04/05(火) 06:58:45.84ID:qPBzPdZO
×プルするルール
◯プッシュするルール
2022/04/05(火) 07:02:20.74ID:HDipRGT6
>>881
これはfetchかpullのタイミングの話であって、それとこれとは別の話だよ
それはpull request用のブランチにsquashなりすれば解決することだろ
2022/04/05(火) 07:09:17.66ID:LSxkXP/U
squashするとまた意味が変わってくる
無駄なマージコミットを気にするならpull --rebaseするといい
2022/04/05(火) 08:27:03.94ID:Tv9hyPpM
内容ごとにブランチを切って、実装完了後にマージしたほうがいい。
こまめにマージする必要あるけど。
2022/04/05(火) 08:37:26.26ID:VZWFnuGC
rebaseすると途中のコミットが見たことないスナップショットに化けるから諦めてmergeする派
2022/04/05(火) 10:22:46.93ID:Ti8ZULSh
どうせマージコミットしか見ないからどうでもいいわ
2022/04/05(火) 12:59:38.64ID:HRL2Dhl7
Git v2.36.0-rc0
2022/04/10(日) 12:29:54.84ID:/cWGM6C3
Git v2.36.0-rc1
890デフォルトの名無しさん
垢版 |
2022/04/10(日) 12:43:00.27ID:gTtQQEaq
今からGitを始めます初心者の質問です。

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

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

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

そうしますと、
複数のメンバーでGitHubの一つのアカウント(リポジトリ)を共有する時の
各メンバーを識別するIDは、どこで指定するのでしょうか?
2022/04/11(月) 07:35:11.19ID:IXb9iAbb
どんなメールアドレスでもpushできるよ
2022/04/11(月) 08:54:42.93ID:Ip9E4gkF
>>896
>>898

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

しかし、コミットのメールアドレスは重要でないというわけでもなくて、コミット一覧とか表示させたときにコミットのメールアドレスに基づいてユーザ名とか写真を表示したりするので、githubのアカウントに登録してあるメールアドレスをgitの方にも登録しておくほうが良い
2022/04/11(月) 20:59:30.97ID:voKtAiO9
>>901
少し上のレスを見ればわかるけど、その質問は「また釣りか」と思われてまともなレスは付かない。
2022/04/13(水) 01:15:32.19ID:TZC3qPMK
とある本の不要になったブランチを削除する手順で
@リモートリポジトリの消したいブランチを削除
ASourcetreeのフェッチのリモートで消えた追跡ブランチを消去(Prune)
BSourcetreeの消したいローカルブランチを右クリックして削除
とありますが、@がリモートリポジトリのブランチを削除、
Bがローカルのそれだとすると
Aの手順にはどんな意味があるのでしょうか
2022/04/13(水) 02:12:16.50ID:eS/flNB4
ブランチには@リモートブランチ A(リモート)追跡ブランチ Bローカルブランチの3種類がある
文脈によってこれらはしばしば混同されるので気をつけていないと混乱する
@はサーバー側にあり、ABはクライアント側にある
Aは常に@のコピーで、フェッチするたびに@の最新と同期される
だからネットワークに繋がっていなくてもいつでもリモートのログが見れる
「リモートブランチのログを見る」というとき、正確には@ではなくAのログを見る行為を指す
フェッチしていなければ@ABが全て別のコミットを指すこともある
Aを消し忘れると、サーバー側のブランチは削除済みなのに、そのクライアントからはまだリモートブランチが消えていないように見える
2022/04/13(水) 03:53:52.80ID:TZC3qPMK
>>906
詳しいご説明ありがとうございます!
2022/04/13(水) 21:31:02.16ID:Pux5Tg8M
Git v2.35.2
2022/04/13(水) 21:31:48.03ID:Pux5Tg8M
Git v2.36.0-rc2
2022/04/14(木) 12:56:35.38ID:DFKHhlAT
Git v2.35.3
2022/04/14(木) 14:21:34.39ID:yss7HMyT
Git v2.36.0-rc3
2022/04/14(木) 14:56:42.75ID:5RufjXVH
「Git for Windows」のシェルが「bash 4.4」から「bash 5.1」へ 〜Vista対応も終了
https://forest.watch.impress.co.jp/docs/news/1402/011/

Windowsで使ってる人(居る?)注意な
2022/04/14(木) 21:19:31.45ID:b6yuiJ9V
居る?ってどういう意味?
2022/04/14(木) 21:40:37.08ID:8uWvcswO
おるかーー?
よーし、おるな!
2022/04/14(木) 22:20:35.99ID:iEpp8WdZ
折るかーー?
よーし、折るな!ボキッ
2022/04/14(木) 22:52:34.66ID:3PT3emFr
ここやでトントン
2022/04/14(木) 23:33:30.30ID:UyRHFpqd
まさかMacなんて使ってんの?
2022/04/15(金) 00:07:36.02ID:ssUN7i/L
>>917
Windows Mac Linux
全部使ってる
2022/04/15(金) 00:18:20.61ID:zUdxudaZ
>>918
いいなぁ
2022/04/15(金) 18:54:21.17ID:C9bHMdiD
GUIのGitクライアントは面倒だよ
なんて言ってる先輩いるだけど
ほとんどコードは書けなくて、コピペしてそのコピペしたコードの意味も分かってない

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

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

やっぱりコマンドをタイプしてる方がカッコいいと思うタイプ?w
2022/04/16(土) 11:10:09.03ID:smzxZJvo
>>939
コマンドをタイプするのはかっこいいと思ってしまったから
お前はそんな書き込みをしたんだよね?
2022/04/16(土) 11:12:54.01ID:gsNTgUrB
いや俺はvscode一択
2022/04/16(土) 11:16:03.64ID:qSyY7sm9
あるある

コマンドを使ってるカッコイイと勘違い
Linuxを使ってるカッコイイと勘違い
ダークテーマを使ってるカッコイイと勘違い
vi emacsを使ってるカッコイイと勘違い
レス数が900を超えています。1000を超えると表示できなくなるよ。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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