Git 17

■ このスレッドは過去ログ倉庫に格納されています
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
2021/05/30(日) 04:22:47.56ID:u5VBQzY3
バルスコマンドじゃないか
2021/05/30(日) 04:55:27.88ID:qzwspvO8
Appendix C: Gitのコマンド
https://git-scm.com/book/ja/v2/Appendix-C%3A-Git%E3%81%AE%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89-%E3%82%BB%E3%83%83%E3%83%88%E3%82%A2%E3%83%83%E3%83%97%E3%81%A8%E8%A8%AD%E5%AE%9A
2021/06/07(月) 02:31:07.57ID:ITNiWKmJ
Git v2.32.0
2021/06/07(月) 12:01:25.51ID:Dgv9Eq7C
一個前にコミットした内容の一部のみ取り出したいんですが、
git diff でgit add -pみたいなやり方教えてください
2021/06/07(月) 12:22:27.07ID:ba2pg6Wh
git reset -p HEAD^
2021/06/07(月) 12:50:45.60ID:0/HU77Xe
>>668
ファイル指定してcheckout
2021/06/07(月) 14:52:02.09ID:2E0gqD7j
git rm ./path/to/file
だとオートコンプリート出来ない

git rm path/to/file
は大丈夫
なんで?
672デフォルトの名無しさん
垢版 |
2021/06/07(月) 15:03:13.15ID:LlJx8Uv/
git bashで試してみたけどできるな
つまりおまば環
2021/06/07(月) 15:40:18.02ID:2E0gqD7j
macのzshだと駄目なようだ
macでもbashだと行ける
2021/06/16(水) 21:14:15.03ID:0FRtKVzj
master 撲滅運動がひと段落したら、今度は、
'doc: replace "alice" and "bob" examples'
とか
'Avoid gendered pronouns'
とか言った感じのメールが流れている。

アメリカのリベラルとか大変ですな。
2021/06/16(水) 21:17:27.70ID:v9WQfkPH
男でAliceというのもいるのにな
2021/06/16(水) 23:08:45.80ID:jDDfyj6K
heとかsheは差別用語とか言い出しそう
677デフォルトの名無しさん
垢版 |
2021/06/16(水) 23:17:10.02ID:O0nAs7bn
いち段落な
2021/06/17(木) 08:04:26.12ID:q1AaV+h7
それじゃエフ氏、エヌ氏にするか。
2021/06/17(木) 08:43:12.09ID:1WuBUd9I
FemaleやNiggerを連想させるのでダメざます
2021/06/17(木) 10:41:34.69ID:Wy4lqRlN
アルファがベータをカッパらったらイプシロンした。なぜだろう。
681デフォルトの名無しさん
垢版 |
2021/06/24(木) 14:15:24.69ID:70oiT5zZ
δ株は差別語になりそう
2021/06/26(土) 18:40:42.75ID:yL+7RGEC
cliだけで特定のコミットのタイムスタンプを(両方とも)改竄したいんだけど
git rebase -i後のエディタが開いて操作対象のコミットを選ぶ奴、コマンドラインから直に指定するにはどうしたらいい?
2021/06/27(日) 00:06:42.93ID:CxF0bT8t
rebase -iでは無理なんじゃないかな
filter-branchを使えばエディタ無しでできると思うけど凄く面倒臭い
今はfilter-branchじゃなくてfilter-repoが新しいらしい
2021/06/27(日) 01:45:42.42ID:8QnlMqaw
非インタラクティブに操作したいのに--interactiveオプションを指定するのは筋が悪いのでは
reset --hard で対象に移動
commit --amend で書き換え
rebase --onto で残りを接ぎ木する
てな感じでできないだろうか
685デフォルトの名無しさん
垢版 |
2021/07/05(月) 15:40:04.81ID:D5B478tw
project/prog/app
という構造のappディレクトリのみcloneすることはできないでしょうか?
sparse-checkoutを試してみたのですが確かにappだけ落ちてくるけどその上のprogフォルダも作られてしまいます
作業ディレクトリの中にappだけ作りたいんですけど可能でしょうか?
686デフォルトの名無しさん
垢版 |
2021/07/05(月) 15:58:21.63ID:zfQ+6anv
muri
687デフォルトの名無しさん
垢版 |
2021/07/05(月) 16:04:19.08ID:2eiMElPJ
部分cloneは無理だから巨大なのには関わりたくないんだよね
ガチ勢としてやるならともかくね
2021/07/05(月) 18:12:21.94ID:8Zv3vlvo
モノレポにすべきかしないべきか
それが問題だ
2021/07/08(木) 15:20:09.92ID:6v3NeDTQ
新人が分散VCSの概念理解できてなくて
プルリクエストのブランチの履歴をめちゃくちゃにしてる件
自分が何をしてるのかよく分からずforce pushしたっぽい
2021/07/08(木) 17:57:15.57ID:PjGQwL85
マルウェアみたいな子だな
2021/07/08(木) 20:19:23.36ID:t+LRnHh1
指導側の責任
2021/07/08(木) 21:15:28.94ID:hDJTokQh
>>689 にも関係すると思うんだけど、
ブランチをpushできるユーザを制限できないかな

慣れてない人向けのサンドボックスなブランチにもなるし。
自分も最近ブランチの運用を教えたものの、
わざとなのか理解してないのか、別のfeatureブランチにpushする輩がいてなあ。
gitlabには有料プランでそういう機能があるみたいなんだけど、ビルトインにはないよね…?
693デフォルトの名無しさん
垢版 |
2021/07/08(木) 21:43:49.58ID:Qb+plU51
権限与えなければ済むことだろ
MR出させろよ
2021/07/08(木) 22:07:09.27ID:6v3NeDTQ
>>692
うちの新人は操作するブランチは合ってるのだがめちゃくちゃにしてた
git慣れてないからって事で先輩が代わりにコミット結合しつつrebaseしたらワケワカメになったっぽい

その先輩、新人に他の人がブランチをrebaseしたら
reset --hard origin/hogeするように連絡してなかったのかも
2021/07/09(金) 00:32:25.09ID:JAtqXAas
>>692
write権限付けなければいいだけだろ
2021/07/09(金) 08:00:42.84ID:ONtLqfbU
git hookで禁止したら?
2021/07/09(金) 10:50:38.48ID:1nwtDT4u
リポジトリごと別にしたら?
新人用のリポジトリ作ってそこにコミットしてもらい、問題無ければマスターへは権限者がマージする。
2021/07/09(金) 11:49:04.59ID:y//2bXB2
みなさんありがとうございます。

writeの権限ってなんでしょうか?receive.denyDeletesとかnoFFマージの制御があるのは知ってるんですが、ブランチのpush権限を制限できましたっけ?
あとすみませんMRって聞いたことなくて教えて下さい。
それとhookは担当者のPCにレポジトリごと設定が必要だと思うんです。忘れちゃうと思うんですよ。

いろいろコメントいただいてありがたいんですが、知識が追いついてないみたいです。
よかったら教えて下さい。
2021/07/09(金) 13:17:19.36ID:ZtOU29YA
>>698
素のgitでサーバー運用してんの?
ちゃんとアクセス権設定できるgitサーバー使った方がいいと思う
2021/07/09(金) 18:27:03.19ID:y//2bXB2
はい、質問の趣旨は素のgitで、できるかというものです。

上でコメントもらったwrite権限とかMR?とかいうものは、素のgitではできないものですか?
それともリモートにhookを仕込むなどして権限制御ができるんでしょうか?

gitlabはブランチの権限を設定できるみたいですが、freeプランには無いみたいですね。
2021/07/09(金) 20:10:44.21ID:egT1RoRc
gitlab使ってるわけじゃないんだ?
ブランチを直接いじらせたくないメンバーはforkからマージリクエスト(MR)投げてもらうようにすればいいんだが。
2021/07/09(金) 21:28:00.02ID:Kwh0IYsl
ああ、マージリクエストのことでしたか。
gitlabは使ってないです。
社内標準がtracについてるやつなので、レポジトリは素のgitだと思います。
なので、ビルトインでできることがないかなと探してます。

クラウドだと難色を示されますが、gitlabはオンプレミスで構築できたと思うので、情シスに打診はしてるものの、それでも乗り気じゃないみたい…

まあこれは弊社の問題なのでおいとくとして、gitの設定だけでできるなら、やり方教えれば動いてくれるかなと。
2021/07/11(日) 06:53:33.97ID:IrrkCg66
素のgitでは出来ないと思う

gitlabは環境を変えなきゃならん可能性があるから情シスは嫌がるだろうね
giteaとかのバイナリ一個で動作するのならいいかもよ
2021/07/11(日) 10:33:06.51ID:P9RS/dyf
GitBucketはバイナリファイル一個だけで動くね
2021/07/11(日) 13:41:08.08ID:lq94NE0I
Dockerで動かせば何でもよくね
2021/07/11(日) 17:59:34.17ID:mu76RUyW
なんでもよくねーよ
707デフォルトの名無しさん
垢版 |
2021/07/11(日) 21:52:00.80ID:Km8X0WTE
GitLab自鯖にインストールしたことあるけど重すぎワロタ
アンインストールもできなくなるほど瀕死の操作不能になった
2021/07/11(日) 22:29:17.98ID:LL6sPKEi
WindowsでDocker Toolbox使ってVirtulaBox上のDockerコンテナとして動かしてもそんなに重くはなかったがな。
2021/07/12(月) 08:39:43.46ID:Y3qBMERg
>>707
最初は軽いんだけど、使ってくと段々と重くなるんだよな
軽くする方法がわかんなくて、結局使うのやめた
2021/07/24(土) 08:23:38.21ID:UjEZlBZt
もう棄てるべきときだね > Git
2021/07/24(土) 11:33:06.91ID:ClAz04v2
見かぎっとるのか
2021/07/24(土) 11:39:19.06ID:Psm9T1Np
時代はHgだよな
713デフォルトの名無しさん
垢版 |
2021/07/24(土) 11:39:52.29ID:2Wdt1Zvr
HAGEが必死すぎ
2021/07/24(土) 13:44:24.56ID:+oLVnveT
いや、時代はPijul(よみかたわかんね)だよ
2021/07/24(土) 16:30:21.34ID:F1f/P+4y
なんだよsvnが一番
2021/07/24(土) 17:16:27.02ID:wX8mF0S9
RCSに立ち帰るべき
2021/07/24(土) 18:23:45.59ID:wleNclHm
みんなどこへいくんや
2021/07/25(日) 22:44:17.50ID:mXugsmaS
P4使えや貧乏人ども
2021/07/25(日) 22:52:56.39ID:Wj/gwJho
アイヤー
MSのコード真似るAIに喰われるとはおもてもいなかたアルね
2021/08/02(月) 21:32:44.46ID:0iPmXdT5
てst
2021/08/02(月) 21:33:55.74ID:0iPmXdT5
filter-branchはじめて使ったんだけどこれって失敗することあるの?
なんかコミット全部に影響出るからこわい
2021/08/03(火) 08:25:46.68ID:51l84/HQ
>>721
テスト用ブランチ作ってからやるべき。
古いブランチはそのまま残ったはず。
2021/08/03(火) 11:52:55.80ID:wDIINEDT
普通にクローン残しておけば良くない?
2021/08/03(火) 12:30:25.20ID:AOdh4ST2
それが出来たらクローンはしないんだよ
2021/08/03(火) 13:22:46.23ID:HHmtzLUS
Git v2.33.0-rc0
2021/08/03(火) 14:28:09.14ID:gqooHnUR
NGID:AOdh4ST2
2021/08/03(火) 15:22:53.43ID:AOdh4ST2
git我慢の子であった
2021/08/03(火) 22:05:47.47ID:vFbEe1/E
>>719
FSFが「GitHub Copilot」に疑問視、ホワイトペーパーを募集
https://mag.osdn.jp/21/08/04/131400

具体的な関心領域としては、
「著作権を侵害した公開リポジトリ上でトレーニングしているのか? フェアユースか?」
「Copilotのアウトプットが、GPLでライセンスされている作品を侵害していることを主張する可能性はどのぐらいあるか?」
「Copilotが生成する侵害に対して、開発者はどのようにして自分が著作権を持つ任意のコードを保護できるのか?」
などを挙げている。
2021/08/04(水) 00:00:18.51ID:DV/IEEV3
>>727
汝、gitはギットと読み
gifはジフと読むであろう
決してジットと読むなかれ
2021/08/04(水) 00:45:22.70ID:zGXO7GNA
我が生活楽にならざりgit手を見る
2021/08/04(水) 01:01:05.64ID:7+juM3qa
ギトギトしてんなぁ
2021/08/11(水) 01:02:28.91
今githubめちゃくちゃリモートリポジトリ失敗する
2021/08/11(水) 01:50:42.29ID:nkK5xEJr
githubの使い方を勉強しています。

githubのDefault branchがmainとなっているのですが、[git branch]と打っても表示されません。
プッシュしようとしても main は存在しないと出てきてしまいます。
master が表示されているので、そこにプッシュすることはできましたが、ブラウザ上で最初に表示される
ブランチがmainなので、もやっとします。
何か対処方は有りませんでしょうか?
2021/08/11(水) 18:33:35.14ID:V3nok1pR
githubの話題はここじゃないと何度言えばわかってもらえるんだ
2021/08/11(水) 20:48:07.77ID:hUnPZulp
ソースコード ホスティング総合【GitHub,GitLab,Bitbucket等】
https://mevius.5ch.net/test/read.cgi/tech/1531824290/
2021/08/12(木) 10:35:07.83ID:Zo0evqt7
別の人が聞いてるんだから何度言ったところで終わりなんてないぞ
そういえば>>1やテンプレに誘導がないので、書いておけば少しは減るかもな
2021/08/14(土) 11:37:35.84ID:k10hBdH7
Git v2.33.0-rc2
2021/08/17(火) 09:15:15.38ID:5BxJGggb
Git v2.33.0
2021/08/21(土) 01:22:27.49ID:MIM0rlCw
リポジトリのすべてのコミット履歴から特定の文字列を削除したいんですが良い方法無いですか?
filter-branchするしかないでしょうか?
740739
垢版 |
2021/08/21(土) 02:28:12.51ID:MIM0rlCw
すみません
filter-branchでやりました
2021/08/21(土) 03:02:27.50ID:MIM0rlCw
20ファイルぐらいあるんですが今、filter-branchで1つずつ削除しています
たぶん土日潰れそうです
2021/08/21(土) 20:58:05.05ID:c3XZUC80
>>30
去年のレスで申し訳ないけど
VSCodeやxcodeだと、git statusで差分があるファイルの色を変えたり 表示を絞り込んだり出来るじゃん
ちまちまコミットしているとそれが出来なくなる(コミットする度に差分が無くなって特別扱いされるファイルが減る)
のが困るんだけど、どうにかなりませんか
2021/08/22(日) 00:44:29.78ID:p4dnH1aF
任意のコミット間で差分表示すればいいじゃん
744デフォルトの名無しさん
垢版 |
2021/08/22(日) 09:04:18.34ID:0Cz6ueFz
Rustのメモリ安全性はボローチェッカーによって担保されているが、
Nimと比較してRustはタイプ量が多い事により限りなく低い生産性と
C++のような高い難読性、超巨大なバイナリ生成性能を兼ね備えています

Nimはバージョン1.5.1でRustのボローチェッカーに似た「View types」が実装されれば、
GC無しのView typesで参照の有効性を検証することによってメモリ安全性を保証しつつ
限りなく抑え込まれたタイプ量で高速化したCのソースコードを吐き出せます

Nimソースコード ==nimコンパイラ==> Cソースコード ==Cコンパイラ==> バイナリ

なので、nimコンパイラが通った時点でメモリ安全性が担保されませんか?

Nimの実験的特徴 バージョン1.5.1
http://nim-lang.github.io/Nim/manual_experimental.html

第二プログラミング言語として Rust はオススメしません Nim をやるのです
https://wolfbash.hateblo.jp/entry/2017/07/30/193412


Nimは限りなく抑え込まれたタイプ量で高い生産性とPythonのような高い可読性を実現し
ているにもかかわらず、高速なCのソースコードを吐き出せるのでC言語でリモートワーク
されている方は割り振られた仕事が早く終わっても終わってないふりをして怠けることができる

「怠け者とはこうあるべきだ!」と言うとても大事な事を Nim は我々に教えてくれます
2021/08/24(火) 01:56:30.85ID:wyjp1IJE
739ですがBFG使ったら一発で出来ました
2021/08/24(火) 17:06:56.87ID:D1ce07b5
BFGて何やと思ったらこんなツールあんのか
2021/08/25(水) 09:15:45.93ID:uZF/NHqm
BFG便利でしたよ

bfg replace-text password.txt myproject.git
でpassword.txtに指定されている文字列を置き換えできました

git grep $(git rev-list --all)
しても問題の文字列は綺麗になってました
2021/09/06(月) 15:09:21.27ID:Xpv1lInW
そろそろCVSからGitに移行しようとしています。

CVSからのリポジトリの移行の方法としてググってみたところ、cvs2git というのと、 git cvsimport ってのがあることが分かりました。
ところがcvs2gitはダウンロードしようとしてもサイトがもう閉鎖(?)されているようで入手できません。
cvsimportにしても、git-cvs の導入が必要で、自分の環境ではGitに合わせて2.27が必要そうなんだけど、やっぱり入手先が見つかりません。

誰かご存じの方いれば教えてください!
当方の環境とは、CentOS8にGit2.27.0を入れています。
2021/09/07(火) 08:38:42.77ID:cFJK6MoD
>>748
gitには今の最新のソースからリポジトリを一から作って
過去の変更履歴を参照したければcvsから見る、って運用ではダメなの?
2021/09/07(火) 09:42:25.03ID:l0FGYRQG
cvs→svn→gitの順番で変換するとか
751デフォルトの名無しさん
垢版 |
2021/09/07(火) 11:05:48.63ID:+uF9wCX0
特定のバージョンが必要なら一旦それ入れれば良いだけだろ
要は変換できる環境で変換してしまえばできたものを持ってくればそれで良いんだから
2021/09/07(火) 12:40:17.05ID:jsklYBqQ
おお、皆さんコメントありがとうございます。

>>749

CVSを無くすことが目的の一つでもあるんです。
で、変更履歴が見れることも必要です。

>>750

SVN経由ですか。
できるなら避けたいですが、ちょっと調べてみます。

>>751

その通りなんですが、CVSからの移行をサブシステムごとに行うので、それなりの期間(多分1年以上)変換できる環境を維持する必要があるんです。


いろいろありがとうございました。
全ての要件を満たしてというのは難しそうですね。
いただいた意見を参考にもうちょっと検討します。
2021/09/08(水) 12:26:53.74ID:H9wC4dw3
git cloneする時にsshのurl指定でBranchまで指定する事って出来るの?
-bとか使わないで
2021/09/11(土) 03:42:20.13ID:s/DqN445
>>753
それ出来ないと思う
海外サイトで@でブランチ指定とか/でブランチ指定とかでやれるって書いてあるサイトも見つけたけど
実際やって見ても全然上手くいかねぇ
2021/09/12(日) 00:33:12.39ID:cVqmkIqS
ガチでない用途、雑多スクリプト集とかは平気で半年コミットしてないのとかあるんですけど
ローカルディレクトリをスキャンして最終編集日 - 最終コミット日の数字が多い順に表示して
いい加減コミットするか編集内容破棄するかしろと警告してくれるツールとかないですか
2021/09/12(日) 06:50:28.66ID:09FXBLJb
面白いw

gitを使わずにディレクトリコピーでバージョン管理
https://mevius.5ch.net/test/read.cgi/tech/1631002816/
757デフォルトの名無しさん
垢版 |
2021/09/13(月) 17:58:18.08ID:ryD/6XDI
リモートのHEADをリモートのdevelopを参照させるようにしたいのですがやり方がさっぱりわかりません。
とても単純なことのように思えるのですがどの方法でやってもSourceTreeなどでクローンするとmaster参照してて困ってます。
origin/HEAD -> origin/master
教えてくださいお願いいたします。
758デフォルトの名無しさん
垢版 |
2021/09/13(月) 18:04:15.74ID:ryD/6XDI
こうなってます
.git]$ ls
COMMIT_EDITMSG HEAD branches description index logs packed-refs
FETCH_HEAD ORIG_HEAD config hooks info objects refs

というか僕何か勘違いしてるかも。
要はSourceTreeでクローンしたとき最新のコミットをHEADが参照してほしいのです。
そうしないと上に登ってってチェックアウトしないとだから。
2021/09/13(月) 19:13:06.94ID:q/DYxyOe
https://stackoverflow.com/questions/3301956/git-correct-way-to-change-active-branch-in-a-bare-repository

リモート側を変える
2021/09/17(金) 17:13:11.77ID:xXjVnzP+
未だにgit cloneで直接特定コミットのクローンが出来ないのはなぜだ
https://stackoverflow.com/questions/31278902/how-to-shallow-clone-a-specific-commit-with-depth-1
2021/09/17(金) 17:22:01.88ID:RINTXLOW
クローンに特定コミットもへったくれも無いだろ
2021/09/17(金) 18:11:47.26ID:J7t/c3vE
shallow clone(--depth 1)で特定コミットの指定な

git cloneにdepth指定はできるが
同時に指定できるのはタグやブランチ名だけで
SHA1で過去のコミット一つだけみたいな指定はできない

なぜかgit fetchではSHA1指定とdepthの組み合わせが出来るらしい
解せぬ
2021/09/22(水) 21:09:14.14ID:E7BplCoS
>>99
番号割り振ればできるだろ、知恵を絞れよ
何のために頭付いてるんだ、大学生にもなってなんだその頭の悪さは
gitのせいか、gitのせいでそんなに頭の悪い人間になってしまったんだな
ようし、gitを禁止します
2021/10/06(水) 17:21:18.09ID:k/56VNFd
ブランチ切り忘れてコミットしまくったあとに
過去にさかのぼってブランチを作成して
全部そこで作業していたことにしたいんだけど
どうしたらいいかな?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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