21/06/07 12:01:25.51 Dgv9Eq7C.net
一個前にコミットした内容の一部のみ取り出したいんですが、
git diff でgit add -pみたいなやり方教えてください
696:デフォルトの名無しさん
21/06/07 12:22:27.07 ba2pg6Wh.net
git reset -p HEAD^
697:デフォルトの名無しさん
21/06/07 12:50:45.60 0/HU77Xe.net
>>674
ファイル指定してcheckout
698:デフォルトの名無しさん
21/06/07 14:52:02.09 2E0gqD7j.net
git rm ./path/to/file
だとオートコンプリート出来ない
git rm path/to/file
は大丈夫
なんで?
699:デフォルトの名無しさん
21/06/07 15:03:13.15 LlJx8Uv/.net
git bashで試してみたけどできるな
つまりおまば環
700:デフォルトの名無しさん
21/06/07 15:40:18.02 2E0gqD7j.net
macのzshだと駄目なようだ
macでもbashだと行ける
701:デフォルトの名無しさん
21/06/16 21:14:15.03 0FRtKVzj.net
master 撲滅運動がひと段落したら、今度は、
'doc: replace "alice" and "bob" examples'
とか
'Avoid gendered pronouns'
とか言った感じのメールが流れている。
アメリカのリベラルとか大変ですな。
702:デフォルトの名無しさん
21/06/16 21:17:27.70 v9WQfkPH.net
男でAliceというのもいるのにな
703:デフォルトの名無しさん
21/06/16 23:08:45.80 jDDfyj6K.net
heとかsheは差別用語とか言い出しそう
704:デフォルトの名無しさん
21/06/16 23:17:10.02 O0nAs7bn.net
いち段落な
705:デフォルトの名無しさん
21/06/17 08:04:26.12 q1AaV+h7.net
それじゃエフ氏、エヌ氏にするか。
706:デフォルトの名無しさん
21/06/17 08:43:12.09 1WuBUd9I.net
FemaleやNiggerを連想させるのでダメざます
707:デフォルトの名無しさん
21/06/17 10:41:34.69 Wy4lqRlN.net
アルファがベータをカッパらったらイプシロンした。なぜだろう。
708:デフォルトの名無しさん
21/06/24 14:15:24.69 70oiT5zZ.net
δ株は差別語になりそう
709:デフォルトの名無しさん
21/06/26 18:40:42.75 yL+7RGEC.net
cliだけで特定のコミットのタイムスタンプを(両方とも)改竄したいんだけど
git rebase -i後のエディタが開いて操作対象のコミットを選ぶ奴、コマンドラインから直に指定するにはどうしたらいい?
710:デフォルトの名無しさん
21/06/27 00:06:42.93 CxF0bT8t.net
rebase -iでは無理なんじゃないかな
filter-branchを使えばエディタ無しでできると思うけど凄く面倒
711:臭い 今はfilter-branchじゃなくてfilter-repoが新しいらしい
712:デフォルトの名無しさん
21/06/27 01:45:42.42 8QnlMqaw.net
非インタラクティブに操作したいのに--interactiveオプションを指定するのは筋が悪いのでは
reset --hard で対象に移動
commit --amend で書き換え
rebase --onto で残りを接ぎ木する
てな感じでできないだろうか
713:デフォルトの名無しさん
21/07/05 15:40:04.81 D5B478tw.net
project/prog/app
という構造のappディレクトリのみcloneすることはできないでしょうか?
sparse-checkoutを試してみたのですが確かにappだけ落ちてくるけどその上のprogフォルダも作られてしまいます
作業ディレクトリの中にappだけ作りたいんですけど可能でしょうか?
714:デフォルトの名無しさん
21/07/05 15:58:21.63 zfQ+6anv.net
muri
715:デフォルトの名無しさん
21/07/05 16:04:19.08 2eiMElPJ.net
部分cloneは無理だから巨大なのには関わりたくないんだよね
ガチ勢としてやるならともかくね
716:デフォルトの名無しさん
21/07/05 18:12:21.94 8Zv3vlvo.net
モノレポにすべきかしないべきか
それが問題だ
717:デフォルトの名無しさん
21/07/08 15:20:09.92 6v3NeDTQ.net
新人が分散VCSの概念理解できてなくて
プルリクエストのブランチの履歴をめちゃくちゃにしてる件
自分が何をしてるのかよく分からずforce pushしたっぽい
718:デフォルトの名無しさん
21/07/08 17:57:15.57 PjGQwL85.net
マルウェアみたいな子だな
719:デフォルトの名無しさん
21/07/08 20:19:23.36 t+LRnHh1.net
指導側の責任
720:デフォルトの名無しさん
21/07/08 21:15:28.94 hDJTokQh.net
>>695 にも関係すると思うんだけど、
ブランチをpushできるユーザを制限できないかな
慣れてない人向けのサンドボックスなブランチにもなるし。
自分も最近ブランチの運用を教えたものの、
わざとなのか理解してないのか、別のfeatureブランチにpushする輩がいてなあ。
gitlabには有料プランでそういう機能があるみたいなんだけど、ビルトインにはないよね…?
721:デフォルトの名無しさん
21/07/08 21:43:49.58 Qb+plU51.net
権限与えなければ済むことだろ
MR出させろよ
722:デフォルトの名無しさん
21/07/08 22:07:09.27 6v3NeDTQ.net
>>698
うちの新人は操作するブランチは合ってるのだがめちゃくちゃにしてた
git慣れてないからって事で先輩が代わりにコミット結合しつつrebaseしたらワケワカメになったっぽい
その先輩、新人に他の人がブランチをrebaseしたら
reset --hard origin/hogeするように連絡してなかったのかも
723:デフォルトの名無しさん
21/07/09 00:32:25.09 JAtqXAas.net
>>698
write権限付けなければいいだけだろ
724:デフォルトの名無しさん
21/07/09 08:00:42.84 ONtLqfbU.net
git hookで禁止したら?
725:デフォルトの名無しさん
21/07/09 10:50:38.48 1nwtDT4u.net
リポジトリごと別にしたら?
新人用のリポジトリ作ってそこにコミットしてもらい、問題無ければマスターへは権限者がマージする。
726:デフォルトの名無しさん
21/07/09 11:49:04.59 y//2bXB2.net
みなさんありがとうございます。
writeの権限ってなんでしょうか?receive.denyDeletesとかnoFFマージの制御があるのは知ってるんですが、ブランチのpush権限を制限できましたっけ?
あとすみませんMRって聞いたことなくて教えて下さい。
それとhookは担当者のPCにレポジトリごと設定が必要だと思うんです。忘れちゃうと思うんですよ。
いろいろコメントいただいてありがたいんですが、知識が追いついてないみたいです。
よかったら教えて下さい。
727:デフォルトの名無しさん
21/07/09 13:17:19.36 ZtOU29YA.net
>>704
素のgitでサーバー運用してんの?
ちゃんとアクセス権設定できるgitサーバー使った方がいいと思う
728:デフォルトの名無しさん
21/07/09 18:27:03.19 y//2bXB2.net
はい、質問の趣旨は素のgitで、できるかというものです。
上でコメントもらったwrite権限とかMR?とかいうものは、素のgitではできないものですか?
それともリモートにhookを仕込むなどして権限制御ができるんでしょうか?
gitlabはブランチの権限を設定できるみたいですが、freeプランには無いみたいですね。
729:デフォルトの名無しさん
21/07/09 20:10:44.21 egT1RoRc.net
gitlab使ってるわけじゃないんだ?
ブランチを直接いじらせたくないメンバーはforkからマージリクエスト(MR)投げてもらうようにすればいいんだが。
730:デフォルトの名無しさん
21/07/09 21:28:00.02 Kwh0IYsl.net
ああ、マージリクエストのことでしたか。
gitlabは使ってないです。
社内標準がtracについてるやつなので、レポジトリは素のgitだと思います。
なので、ビルトインでできることがないかなと探してます。
クラウドだと難色を示されますが、gitlabはオンプレミスで構築できたと思うので、情シスに打診はしてるものの、それでも乗り気じゃないみたい…
まあこれは弊社の問題なのでおいとくとして、gitの設定だけでできるなら、やり方教えれば動いてくれるかなと。
731:デフォルトの名無しさん
21/07/11 06:53:33.97 IrrkCg66.net
素のgitでは出来ないと思う
gitlabは環境を変えなきゃならん可能性があるから情シスは嫌がるだろうね
giteaとかのバイナリ一個で動作するのならいいかもよ
732:デフォルトの名無しさん
21/07/11 10:33:06.51 P9RS/dyf.net
GitBucketはバイナリファイル一個だけで動くね
733:デフォルトの名無しさん
21/07/11 13:41:08.08 lq94NE0I.net
Dockerで動かせば何でもよくね
734:デフォルトの名無しさん
21/07/11 17:59:34.17 mu76RUyW.net
なんでもよくねーよ
735:デフォルトの名無しさん
21/07/11 21:52:00.80 Km8X0WTE.net
GitLab自鯖にインストールしたことあるけど重すぎワロタ
アンインストールもできなくなるほど瀕死の操作不能になった
736:デフォルトの名無しさん
21/07/11 22:29:17.98 LL6sPKEi.net
WindowsでDocker Toolbox使ってVirtulaBox上のDockerコンテナとして動かしてもそんなに重くはなかったがな。
737:デフォルトの名無しさん
21/07/12 08:39:43.46 Y3qBMERg.net
>>713
最初は軽いんだけど、使ってくと段々と重くなるんだよな
軽くする方法がわかんなくて、結局使うのやめた
738:デフォルトの名無しさん
21/07/24 08:23:38.21 UjEZlBZt.net
もう棄てるべきときだね > Git
739:デフォルトの名無しさん
21/07/24 11:33:06.91 ClAz04v2.net
見かぎっとるのか
740:デフォルトの名無しさん
21/07/24 11:39:19.06 Psm9T1Np.net
時代はHgだよな
741:デフォルトの名無しさん
21/07/24 11:39:52.29 2Wdt1Zvr.net
HAGEが必死すぎ
742:デフォルトの名無しさん
21/07/24 13:44:24.56 +oLVnveT.net
いや、時代はPijul(よみかたわかんね)だよ
743:デフォルトの名無しさん
21/07/24 16:30:21.34 F1f/P+4y.net
なんだよsvnが一番
744:デフォルトの名無しさん
21/07/24 17:16:27.02 wX8mF0S9.net
RCSに立ち帰るべき
745:デフォルトの名無しさん
21/07/24 18:23:45.59 wleNclHm.net
みんなどこへいくんや
746:デフォルトの名無しさん
21/07/25 22:44:17.50 mXugsmaS.net
P4使えや貧乏人ども
747:デフォルトの名無しさん
21/07/25 22:52:56.39 Wj/gwJho.net
アイヤー
MSのコード真似るAIに喰われるとはおもてもいなかたアルね
748:デフォルトの名無しさん
21/08/02 21:32:44.46 0iPmXdT5.net
てst
749:デフォルトの名無しさん
21/08/02 21:33:55.74 0iPmXdT5.net
filter-branchはじめて使ったんだけどこれって失敗することあるの?
なんかコミット全部に影響出るからこわい
750:デフォルトの名無しさん
21/08/03 08:25:46.68 51l84/HQ.net
>>727
テスト用ブランチ作ってからやるべき。
古いブランチはそのまま残ったはず。
751:デフォルトの名無しさん
21/08/03 11:52:55.80 wDIINEDT.net
普通にクローン残しておけば良くない?
752:デフォルトの名無しさん
21/08/03 12:30:25.20 AOdh4ST2.net
それが出来たらクローンはしないん
753:だよ
754:デフォルトの名無しさん
21/08/03 13:22:46.23 HHmtzLUS.net
Git v2.33.0-rc0
755:デフォルトの名無しさん
21/08/03 14:28:09.14 gqooHnUR.net
NGID:AOdh4ST2
756:デフォルトの名無しさん
21/08/03 15:22:53.43 AOdh4ST2.net
git我慢の子であった
757:デフォルトの名無しさん
21/08/03 22:05:47.47 vFbEe1/E.net
>>725
FSFが「GitHub Copilot」に疑問視、ホワイトペーパーを募集
URLリンク(mag.osdn.jp)
具体的な関心領域としては、
「著作権を侵害した公開リポジトリ上でトレーニングしているのか? フェアユースか?」
「Copilotのアウトプットが、GPLでライセンスされている作品を侵害していることを主張する可能性はどのぐらいあるか?」
「Copilotが生成する侵害に対して、開発者はどのようにして自分が著作権を持つ任意のコードを保護できるのか?」
などを挙げている。
758:デフォルトの名無しさん
21/08/04 00:00:18.51 DV/IEEV3.net
>>733
汝、gitはギットと読み
gifはジフと読むであろう
決してジットと読むなかれ
759:デフォルトの名無しさん
21/08/04 00:45:22.70 zGXO7GNA.net
我が生活楽にならざりgit手を見る
760:デフォルトの名無しさん
21/08/04 01:01:05.64 7+juM3qa.net
ギトギトしてんなぁ
761:デフォルトの名無しさん
21/08/11 01:02:28.91 .net
今githubめちゃくちゃリモートリポジトリ失敗する
762:デフォルトの名無しさん
21/08/11 01:50:42.29 nkK5xEJr.net
githubの使い方を勉強しています。
githubのDefault branchがmainとなっているのですが、[git branch]と打っても表示されません。
プッシュしようとしても main は存在しないと出てきてしまいます。
master が表示されているので、そこにプッシュすることはできましたが、ブラウザ上で最初に表示される
ブランチがmainなので、もやっとします。
何か対処方は有りませんでしょうか?
763:デフォルトの名無しさん
21/08/11 18:33:35.14 V3nok1pR.net
githubの話題はここじゃないと何度言えばわかってもらえるんだ
764:デフォルトの名無しさん
21/08/11 20:48:07.77 hUnPZulp.net
ソースコード ホスティング総合【GitHub,GitLab,Bitbucket等】
スレリンク(tech板)
765:デフォルトの名無しさん
21/08/12 10:35:07.83 Zo0evqt7.net
別の人が聞いてるんだから何度言ったところで終わりなんてないぞ
そういえば>>1やテンプレに誘導がないので、書いておけば少しは減るかもな
766:デフォルトの名無しさん
21/08/14 11:37:35.84 k10hBdH7.net
Git v2.33.0-rc2
767:デフォルトの名無しさん
21/08/17 09:15:15.38 5BxJGggb.net
Git v2.33.0
768:デフォルトの名無しさん
21/08/21 01:22:27.49 MIM0rlCw.net
リポジトリのすべてのコミット履歴から特定の文字列を削除したいんですが良い方法無いですか?
filter-branchするしかないでしょうか?
769:739
21/08/21 02:28:12.51 MIM0rlCw.net
すみません
filter-branchでやりました
770:デフォルトの名無しさん
21/08/21 03:02:27.50 MIM0rlCw.net
20ファイルぐらいあるんですが今、filter-branchで1つずつ削除しています
たぶん土日潰れそうです
771:デフォルトの名無しさん
21/08/21 20:58:05.05 c3XZUC80.net
>>32
去年のレスで申し訳ないけど
VSCodeやxcodeだと、git statusで差分があるファイルの色を変えたり 表示を絞り込んだり出来るじゃん
ちまちまコミットしているとそれが出来なくなる(コミットする度に差分が無くなって特別扱いされるファイルが減る)
のが困るんだけど、どうにかなりませんか
772:デフォルトの名無しさん
21/08/22 00:44:29.78 p4dnH1aF.net
任意のコミット間で差分表示すればいいじゃん
773:デフォルトの名無しさん
21/08/22 09:04:18.34 0Cz6ueFz.net
Rustのメモリ安全性はボローチェッカーによって担保されているが、
Nimと比較してRustはタイプ量が多い事により限りなく低�
774:「生産性と 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 は我々に教えてくれます
775:デフォルトの名無しさん
21/08/24 01:56:30.85 wyjp1IJE.net
739ですがBFG使ったら一発で出来ました
776:デフォルトの名無しさん
21/08/24 17:06:56.87 D1ce07b5.net
BFGて何やと思ったらこんなツールあんのか
777:デフォルトの名無しさん
21/08/25 09:15:45.93 uZF/NHqm.net
BFG便利でしたよ
bfg replace-text password.txt myproject.git
でpassword.txtに指定されている文字列を置き換えできました
git grep $(git rev-list --all)
しても問題の文字列は綺麗になってました
778:デフォルトの名無しさん
21/09/06 15:09:21.27 Xpv1lInW.net
そろそろCVSからGitに移行しようとしています。
CVSからのリポジトリの移行の方法としてググってみたところ、cvs2git というのと、 git cvsimport ってのがあることが分かりました。
ところがcvs2gitはダウンロードしようとしてもサイトがもう閉鎖(?)されているようで入手できません。
cvsimportにしても、git-cvs の導入が必要で、自分の環境ではGitに合わせて2.27が必要そうなんだけど、やっぱり入手先が見つかりません。
誰かご存じの方いれば教えてください!
当方の環境とは、CentOS8にGit2.27.0を入れています。
779:デフォルトの名無しさん
21/09/07 08:38:42.77 cFJK6MoD.net
>>754
gitには今の最新のソースからリポジトリを一から作って
過去の変更履歴を参照したければcvsから見る、って運用ではダメなの?
780:デフォルトの名無しさん
21/09/07 09:42:25.03 l0FGYRQG.net
cvs→svn→gitの順番で変換するとか
781:デフォルトの名無しさん
21/09/07 11:05:48.63 +uF9wCX0.net
特定のバージョンが必要なら一旦それ入れれば良いだけだろ
要は変換できる環境で変換してしまえばできたものを持ってくればそれで良いんだから
782:デフォルトの名無しさん
21/09/07 12:40:17.05 jsklYBqQ.net
おお、皆さんコメントありがとうございます。
>>755
CVSを無くすことが目的の一つでもあるんです。
で、変更履歴が見れることも必要です。
>>756
SVN経由ですか。
できるなら避けたいですが、ちょっと調べてみます。
>>757
その通りなんですが、CVSからの移行をサブシステムごとに行うので、それなりの期間(多分1年以上)変換できる環境を維持する必要があるんです。
いろいろありがとうございました。
全ての要件を満たしてというのは難しそうですね。
いただいた意見を参考にもうちょっと検討します。
783:デフォルトの名無しさん
21/09/08 12:26:53.74 H9wC4dw3.net
git cloneする時にsshのurl指定でBranchまで指定する事って出来るの?
-bとか使わないで
784:デフォルトの名無しさん
21/09/11 03:42:20.13 s/DqN445.net
>>759
それ出来ないと思う
海外サイトで@でブランチ指定とか/でブランチ指定とかでやれるって書いてあるサイトも見つけたけど
実際やって見ても全然上手くいかねぇ
785:デフォルトの名無しさん
21/09/12 00:33:12.39 cVqmkIqS.net
ガチでない用途、雑多スクリプト集とかは平気で半年コミットしてないのとかあるんですけど
ローカルディレクトリをスキャンして最終編集日 - 最終コミット日の数字が多い順に表示して
いい加減コミットするか編集内容破棄するかしろと警告してくれるツールとかないですか
786:デフォルトの名無しさん
21/09/12 06:50:28.66 09FXBLJb.net
面白いw
gitを使わずにディレクトリコピーでバージョン管理
スレリンク(tech板)
787:デフォルトの名無しさん
21/09/13 17:58:18.08 ryD/6XDI.net
リモートのHEADをリモートのdevelopを参照させるようにしたいのですがやり方がさっぱりわかりません。
とても単純なことのように思えるのですがどの方法でやってもSourceTreeなどでクローンするとmaster参照してて困ってます。
origin/HEAD -> origin/master
教えてくださいお願いいたします。
788:デフォルトの名無しさん
21/09/13 18:04:15.74 ryD/6XDI.net
こうなってます
.git]$ ls
COMMIT_EDITMSG HEAD branches description index logs packed-refs
FETCH_HEAD ORIG_HEAD config hooks info objects refs
というか僕何か勘違いしてるかも。
要はSourceTreeでクローンしたとき最新のコミットをHEADが参照してほしいのです。
そうしないと上に登ってってチェックアウトしないとだから。
789:デフォルトの名無しさん
21/09/13 19:13:06.94 q/DYxyOe.net
URLリンク(stackoverflow.com)
リモート側を変える
790:デフォルトの名無しさん
21/09/17 17:13:11.77 xXjVnzP+.net
未だにgit cloneで直接特定コミットのクローンが出来ないのはなぜだ
URLリンク(stackoverflow.com)
791:デフォルトの名無しさん
21/09/17 17:22:01.88 RINTXLOW.net
クローンに特定コミットもへったくれも無いだろ
792:デフォルトの名無しさん
21/09/17 18:11:47.26 J7t/c3vE.net
shallow clone(--depth 1)で特定コミットの指定な
git cloneにdepth指定はできるが
同時に指定できるのはタグやブランチ名だけで
SHA1で過去のコミット一つだけみたいな指定はできない
なぜかgit fetchではSHA1指定とdepthの組み合わせが出来るらしい
解せぬ
793:デフォルトの名無しさん
21/09/22 21:09:14.14 E7BplCoS.net
>>102
番号割り振ればできるだろ、知恵を絞れよ
何のために頭付いてるんだ、大学生にもなってなんだその頭の悪さは
gitのせいか、gitのせいでそんなに頭の悪い人間になってしまったんだな
ようし、gitを禁止します
794:デフォルトの名無しさん
21/10/06 17:21:18.09 k/56VNFd.net
ブランチ切り忘れてコミットしまくったあとに
過去にさかのぼってブランチを作成して
全部そこで作業していたことにしたいんだけど
どうしたらいいかな?
795:デフォルトの名無しさん
21/10/06 17:24:42.54 BSJj0FI1.net
今いる場所でブランチを作成
元のブランチはリセット
796:デフォルトの名無しさん
21/10/06 17:30:20.63 WIlNjQ3U.net
間違ってコミットしまくったブランチをまだpushしてないなら
コミットしまくった最後のコミットで新しいブランチ作って
間違ってコミットしまくったブランチの方を「git reset --hard origin/間違ったブランチ」とかすれば良いだろ?
797:デフォルトの名無しさん
21/10/06 17:30:33.39 WIlNjQ3U.net
かぶったわ
798:デフォルトの名無しさん
21/10/10 11:13:28.32 6H5ZAnm/.net
git bashでlsの実行結果が文字化けしたらコレ
export LANG=$(locale -uU)
799:デフォルトの名無しさん
21/10/12 02:46:28.00 En/nySAf.net
echo "export LANG=$(locale -uU)" > %USERPROFILE%\.bashrc
800:デフォルトの名無しさん
21/10/12 08:42:22.48 U1uDb369.net
おいおいおい
.bashrc消して平気なの?
801:デフォルトの名無しさん
21/10/14 13:19:16.57 kAsx6HNe.net
知っている方いたら教えてください。
CVSからGitに移行しようとしてます。
開発にはEclipseを使っていて、今はEclipseのプラグインでCVSと連携しています。
Git用にはEGitというプラグインが必要ということはググってわかりました。
EclipseでEGitを使う場合ローカルPCにGitの導入は別途必要ですか?
ネットで見た例だと、EGitで直接GitHubのリポジトリを指定してたんだけど、EGitを使えばリモートのリポジトリに直接アクセスすることになって、ローカルにリポジトリは作らない(なので、Gitの導入は不要)という理解であってますか?
事前に試せる環境がないため、経験者のかたがいれば教えてもらいたいです。
802:デフォルトの名無しさん
21/10/14 14:14:33.36 lQJgPnH3.net
>>777
gitはローカルリポジトリでコミットしてからリモートリポジトリにプッシュする二段階の仕組みなので、ローカルにgit「クライアント」は必要。(gitクライアントにローカルリポジトリを操作する機能が存在する)
803:デフォルトの名無しさん
21/10/14 14:23:38.11 lQJgPnH3.net
>>778
ちょっと補足。
Egitは使ったこと無いからは詳しく無いけど、解説とか見るとEgit+eclipseで一通りのgit操作はできるみたい。ただ、gitの仕組みとして(通常の利用方法だと)必ずローカルリポジトリを使うので、ローカルリポジトリ無しでリモートリポジトリを直接操作することはできない。
逆に、gitはリモートリポジトリ無しでローカルリポジトリのみの運用というのができるから、まずはそれで色々と試したら?
804:デフォルトの名無しさん
21/10/14 14:26:08.18 7VZCgDUW.net
>>777
Eclipseを使ったことはないが、こんなのを見つけた
URLリンク(www.casleyconsulting.co.jp)
>EGit は Java の Git 実装である JGit を使って動きますので、別途 Git のコマンドラインツールなどを入れる必要はありません。
URLリンク(wiki.eclipse.org)
>What are the main differences between original Git and JGit(EGit)?
805:デフォルトの名無しさん
21/10/14 14:36:06.90 YcNpNoWq.net
Git v2.33.1
806:デフォルトの名無しさん
21/10/14 14:37:15.68 YcNpNoWq.net
>>777
egitは現在のeclipseに含まれています。
別途PCにgitのインストールは不要です。
807:デフォルトの名無しさん
21/10/14 14:58:54.76 kAsx6HNe.net
>>778,779,780,781,782
ああ、こんなすぐに親切なレスがいっぱい!!
> ローカルリポジトリ無しでリモートリポジトリを直接操作することはできない。
そうですよね。だからGit本体も必要じゃないかと思ってたんです。
>EGit は Java の Git 実装である JGit を使って動きますので、別途 Git のコマンドラインツールなどを入れる必要はありません。
Gitそのものではないけど、Gitと同じ動きをするJGitが使われているという事ですかね。
それでEclipse+Git関連の記事でもGitのインストールについて特に触れる必要がないと。
で、今時のElipseならEGitもついてくるんですね。Pleiadesのサイト見ましたが、確かにEGitもパッケージされてますね。
JGitでググってみたら紹介してくれたwikipedia以外にも日本語で紹介/解説しているサイトがいろいあるみたいなので、まずはそちらで勉強してみます。
モヤっとしてたのがスッキリしました。
またここで追加質問しちゃうかもしれませんがよろしくお願いします。
808:デフォルトの名無しさん
21/10/14 23:57:06.50 xwnJS6sg.net
どういたしまして�
809:I!!! 全部俺
810:デフォルトの名無しさん
21/10/17 09:58:04.13 Q0jShLZX.net
個人で開発してる場合に、subversionと比較してGitのほうが優れていることってどんなことがありますか?
Git使ってみてるんですが、ローカルリポジトリとリモートリポジトリに別れてるのが面倒くさく感じてしまうんです。
811:デフォルトの名無しさん
21/10/17 10:38:37.55 8eKBj5MQ.net
ローカルリポジトリだけで出来る
812:デフォルトの名無しさん
21/10/17 13:11:42.80 Zl984gEM.net
svnはマージがアホ
813:デフォルトの名無しさん
21/10/17 13:55:53.46 2tMovdDG.net
個人でやってるならリモートリポジトリを使う必要ないよ
別の場所にバックアップしたいときだけ稀にプッシュしておいてもいいかな程度
Gitはブランチ開発が圧倒的に便利
次バージョンの開発をしながら、ヤバいバグを見つけたらスイッチして現行リリースにパッチを当てるなんて作業がやりやすい
コミット等の操作を間違えたときの復元方法も充実してるからガンガンコミットするスタイルが身についてロスがない
あまりにも小規模な開発しかしてないならGitに移行したところで便利さに気付かないかもね
814:デフォルトの名無しさん
21/10/17 14:17:13.86 4gFBmPmU.net
svnはもう使わなくなってから何年も立つけど、ローカルブランチ作るのに全コピーが発生する問題は改善されたん?
gitは瞬間的にローカルブランチ作れることが、当時、最大のメリットだと個人的には感じてたけど
815:デフォルトの名無しさん
21/10/17 14:18:42.77 4gFBmPmU.net
あ、ローカルって書いちゃったけどリモートも同様
816:デフォルトの名無しさん
21/10/17 15:15:03.36 2tMovdDG.net
svnも物理コピーしてるわけじゃなくポインタをコピーしてるだけだからそこは別にデメリットではないと思う
817:デフォルトの名無しさん
21/10/17 15:26:46.35 4gFBmPmU.net
じゃあそこは改善されたんだね
818:デフォルトの名無しさん
21/10/17 15:29:30.74 QJpjjZiJ.net
ローカルで何でもできるのとrebaseできるのが大きいな。
819:デフォルトの名無しさん
21/10/17 16:36:16.01 2tMovdDG.net
svnのコピーは最初からそういう設計思想だよ
強いて言うならCVSに対しての改善点
URLリンク(subversion.apache.org)
820:デフォルトの名無しさん
21/10/20 03:48:00.82 fM0zKRFM.net
--filter=blob:noneでcloneしたレポで久しぶりにpullすると
remote: Enumerating objects: 1, done.
remote: Counting objects: 100% (1/1), done.
remote: Total 1 (delta 0), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (1/1), 334 bytes | 334.00 KiB/s, done.
remote: Enumerating objects: 1, done.
remote: Counting objects: 100% (1/1), done.
remote: Total 1 (delta 0), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (1/1), 413 bytes | 413.00 KiB/s, done.
が延々続く
.git/configのpromiser=trueとpartialclonefilter=blob:noneを消すと秒で終わる
これは仕様?
821:デフォルトの名無しさん
21/10/31 11:33:48.76 08bIR5oT.net
Git v2.34.0-rc0
822:デフォルトの名無しさん
21/11/04 09:59:24.05 RuoxMXd8.net
Git v2.34.0-rc1
823:デフォルトの名無しさん
21/11/07 11:40:46.01 khCyKtci.net
MSに握られたくないなら、cvs か svn
824:デフォルトの名無しさん
21/11/07 11:42:30.89 QVBUkb8D.net
>>798
git使うとmsに握られるというのが意味不明なんだが
825:デフォルトの名無しさん
21/11/07 12:37:05.54 UQcl36Q5.net
gitとgithubの区別がつかない人がMSアレルギーをこじらせている姿はもう見飽きた
情報のアップデートをできずに屈折した持論を垂れ流すから老害の部類かな
826:デフォルトの名無しさん
21/11/08 21:23:48.94 Tlvj8hhG.net
それはもはやチテキショウ害なのでは
827:デフォルトの名無しさん
21/11/11 10:05:05.74 SpIFedoW.net
わろす
828:デフォルトの名無しさん
21/11/16 08:19:16.49 nj7ybZ5p.net
Git v2.34.0
829:デフォルトの名無しさん
21/11/25 08:42:00.93 +EmkPByH.net
Git v2.34.1
830:デフォルトの名無しさん
21/11/25 12:21:37.68 F3lCPX8r.net
すぐキレるLinusも若手から老害と言われてるんだろうな。
831:デフォルトの名無しさん
2021/11/27(土
832:) 18:33:16.18 ID:EO01MlFX.net
833:デフォルトの名無しさん
21/11/30 21:35:19.46 a/ltCSu7.net
10年程昔からの自作のフリーウェアを git で公開しようとしているんだけど
あまり昔の version はもう環境が変わっていて動かない
動くものだけを公開した方が良いのかな
それとも最新のものだけにした方がいいですか
834:デフォルトの名無しさん
21/11/30 21:59:48.42 29wtvv9O.net
好きにしろ
835:デフォルトの名無しさん
21/11/30 22:33:45.81 a/ltCSu7.net
わかりました
どうも
836:デフォルトの名無しさん
21/12/09 01:56:53.52 8VFa9Xh4.net
gitの変更履歴より細かい単位で変更を戻したいとき、うまい方法はありますかね。
例えば一つのファイルの中で3つの関数を変更してコミットした後、1つの関数だけ
元に戻したくなった場合などに。
837:デフォルトの名無しさん
21/12/09 06:55:22.90 CTJ8MnG2.net
>>810
その関数を変更した後にコミット
838:デフォルトの名無しさん
21/12/09 07:23:14.89 nPf7xXRe.net
>>810
git rebase
1
2
3 ← ここで止める
4
5
1
2
3.1
3.2
3.3 ← こんな感じにコミット
git rebase --continue でリベース完了
あと慣れたら 2つの関数だけコミットして、
1つは戻ればいい
839:デフォルトの名無しさん
21/12/09 08:05:36.93 Rbrjprb1.net
>>810
pushする前ならcommit amend して修正してからrebase。
push後なら新たにcommit。
840:デフォルトの名無しさん
21/12/09 08:13:38.11 nPf7xXRe.net
あめんどは、あ、めんどう~だ、なぁ~
841:デフォルトの名無しさん
21/12/09 08:15:15.22 ETLEJYpI.net
求めてるのはadd -pじゃないのかな
842:デフォルトの名無しさん
21/12/09 08:22:24.08 zGaqleE8.net
>>813
わかりづらいな……試してないけど
…56 3関数commit abc……master
ここをchechout -b mod
…56 3関数commit abc……master
[mod:2関数commit]
元に戻してcommit amend
…56 3関数commit abc……
mod abc……[master]
masterをchechoutしてmodにrebase
ただし、コミットを他人と共有済みなら混乱の元なので禁止。
843:デフォルトの名無しさん
21/12/09 08:58:11.54 Dni9SPWj.net
>>810
履歴改変をするわけじゃないんだよね?それならば、
git revert -n でindexに三つの関数の修正を打ち消す修正を持ってきて、git reset -p でindexの余分な修正を取り除いて、git commit
844:804
21/12/09 09:39:57.87 rmYbkO4s.net
どうも>>810です。プッシュはしてませんのでアメンドないしリセットとしてやり直すことは
可能です(よね?)
なんというか、作業方法なども含めてキレイ&楽にやる方法はどんな感じかなと。
例えばそもそも論だと、最初からこういう場合に備えてコミットを関数1個毎とか細かくしておく?
アメンドないしリセットしてやり直す場合も、どうやって変更を用意しようかなと... もう一回
同じ変更を入力したくはないし危険... とかなんとか。
845:デフォルトの名無しさん
21/12/09 10:00:49.33 z12/cdNE.net
>>818
だから何をしたいのかはっきりしろ
pushしてないのは分かった
pushしてないローカルな履歴を改変したいのか?
pushしてないローカルな履歴に関数の修整を無効化するコミットを追加したいのか?
846:デフォルトの名無しさん
21/12/09 10:05:24.50 Dni9SPWj.net
>>818
変更の用意はrevert -nとreset -pでいいだろ
この2つを使えば自分でコードを入力する必要は無い
847:デフォルトの名無しさん
21/12/09 11:35:29.86 nPf7xXRe.net
>>818
だから>>812だって
rebaseで過去の歴史の途中に戻って
そこでコミットを分けるなりして
再び歴史を
848:再生する
849:デフォルトの名無しさん
21/12/09 11:36:08.99 nPf7xXRe.net
正確には git rebase -i な
850:デフォルトの名無しさん
21/12/09 13:53:35.69 CTJ8MnG2.net
もう面倒くさいから一か所もどしましたってコミットしたらいいやん
851:デフォルトの名無しさん
21/12/09 14:15:33.20 SnlJ6hdA.net
rebaseは悪い文化
852:デフォルトの名無しさん
21/12/09 14:50:31.70 nPf7xXRe.net
>>824
必要なのは結果だけ
お前が試行錯誤した後なんかどうでもいい
853:デフォルトの名無しさん
21/12/09 14:51:34.29 Dni9SPWj.net
>>823
そのコミットを簡単に作る方法が知りたいのだと思う
854:デフォルトの名無しさん
21/12/09 15:05:38.49 FiTzWudg.net
>>826
Winmergeをdiffツールに設定して
git windiff HEAD^^^
で戻してcommitだな俺なら
855:デフォルトの名無しさん
21/12/09 15:28:07.01 1oFDwxyl.net
>>818
そもそも論の部分に回答すると、意思決定の基本は発生率とコストを掛け合わせた期待値次第
いちいち細分化しすぎてもYAGNIの法則で言われるような無駄が多くなるだけ
でも後から部分的に採用する可能性もそれなりにあるのであれば分けてコミットしておくことでコストを抑えられる可能性が増す
856:デフォルトの名無しさん
21/12/09 18:55:14.96 lg/9Dj4Y.net
>>818
そもそも論で言うなら、追加・修正する機能ごとにブランチを切って、完成したブランチを別々にコミットすればいい。gitはブランチが軽量という強みもあるし。
機能をマージするときにコンフリクトを修正する面倒くささはあるけど、見通しは良くなる。
857:デフォルトの名無しさん
21/12/09 20:50:07.62 ejbJEiiI.net
コミットの粒度の話じゃないの?
858:デフォルトの名無しさん
21/12/09 22:51:55.36 EKItVGZE.net
追えてないけど、どれか。
・そもそもコミットきれいにしても結局使わないから作り直さない
・頻繁にコンパイル?して頻繁にコミットしておく
・もう最初から作り直せよ派: git reset $(git merge-base origin/master) → 気に入るコミット作っていく。
・ツールに関数単位で切り出させて、差分をうまいことやる。VisualStudioならこのメソッドをクラス化、みたいなやつがあったような。それ以外は知らん。
859:デフォルトの名無しさん
21/12/09 23:49:30.01 Fvd6f3uE.net
コミットをセーブ機能だと思うからだめなんだよ
袋だと思え袋
コードを書くたびに適切な袋に入れろ
860:デフォルトの名無しさん
21/12/10 11:49:29.41 5non8kx0.net
>>831
・追加機能ごとにブランチ切る
も追加で。
861:デフォルトの名無しさん
21/12/10 15:18:37.19 dSCEiiiB.net
最近では、機能ブランチは問題を先送りにしているだけだという批判もある
機能ブランチはすぐにリリースして消せ、作りかけならフィーチャートグルで蓋をしろというスタイルもあるぞ
それは一理あって、実際複数のチームでそれぞれフィーチャーブランチを担当してリリース時に一気にマージするスタイルの大規模サービス開発やってたときには
マージの失敗でトラブルが起こることは日常茶飯事だったね
862:デフォルトの名無しさん
21/12/11 00:15:15.28 L5jxStGt.net
それは機能ブランチが悪って話じゃなくて、機能ブランチをやたらと長期間分離しておくのが悪って話じゃね
何事もトレードオフだから機能がでかいならイテレーションを小さく取るし、リリースギリギリまでマージしなければ泣きを見るので頃合いを見て合流してテスト始める
互いに影響し合う部分についてはコミュニケーション取りつつ適宜ソースをやり取りしろというのがGitの指針だったと思うし
863:デフォルトの名無しさん
22/01/12 10:21:41.75 mFIs9bfU.net
Git v2.35.0-rc0
864:デフォルトの名無しさん
22/01/12 19:57:57.27 IbSx3jpA.net
こういうコミットをしてたと�
865:オて $ git log --oneline commit_id_5 やっぱり××を復活させる(2021/05/01) commit_id_4 □□を修正(2021/04/01) commit_id_3 ××を削除(2021/03/01) commit_id_2 △△を修正(2021/02/01) commit_id_1 〇〇を修正(2021/01/01) 「commit_id_3 と commit_id_5 を消して、コミットログをきれいにした状態でリモートブランチにpushする」というようなことは可能ですか? こういう場合にgit rebaseが使われるんですかね?
866:デフォルトの名無しさん
22/01/12 21:08:30.47 et9b++qr.net
>>837
はい。そうです。
867:デフォルトの名無しさん
22/01/12 21:16:41.65 IbSx3jpA.net
>>838
ありがとうございます
てか真上に同じような質問ありましたね…
868:デフォルトの名無しさん
22/01/15 22:30:31.28 mgu84OGw.net
Git v2.35.0-rc1
869:デフォルトの名無しさん
22/01/16 00:47:01.30 hYWYL0RZ.net
>>837
俺は作りながら片付ける
作ってる途中で、この修正はこのコミットに含めよう
などと考えならが小さくコミットし
適度なタイミングでrebaseする
870:デフォルトの名無しさん
22/01/17 06:52:31.08 pA35C6jo.net
>>837
別ブランチでcommitして、masterにまとめてmergeしてpushする、って方法もあるよ
これだとrebaseは不要
871:デフォルトの名無しさん
22/01/23 09:44:11.74 6R0k9GT3.net
gitもcvs,svnと同じ運命をたどるだろう
私の企業は次世代バージョン管理システムfossilに切り替えました
872:デフォルトの名無しさん
22/01/24 13:46:51.63 2I6HNHFB.net
化石?
873:デフォルトの名無しさん
22/01/24 15:13:36.64 TB1mn4oZ.net
次世代って書いてるけどGitやMercurialと同期だね
統合が特徴みたいだけど、少なくとも統合指向=先進的というのは言えない
昔のMSや古いエンタープライズシステムが通ってきた道
874:デフォルトの名無しさん
22/01/24 20:03:13.29 T/bW8QxB.net
sqlite以外に使ってるプロジェクトあるの?
875:デフォルトの名無しさん
22/01/25 09:41:06.99 lI80daK7.net
Git v2.35.0
876:デフォルトの名無しさん
22/01/27 23:05:55.20 5JD4ntnW.net
「Git 2.35」が公開
URLリンク(mag.osdn.jp)
877:デフォルトの名無しさん
22/01/29 22:24:24.64 DKHpcK/K.net
Git v2.35.1
878:デフォルトの名無しさん
22/02/04 16:36:05.63 57NC5giI.net
Git 日本語翻訳チーム
URLリンク(github.com)
879:デフォルトの名無しさん
22/02/04 16:53:15.37 ldQUlQ88.net
>>850
gitを業務で使われている方は翻訳に参加してください
880:デフォルトの名無しさん
22/02/08 12:18:02.21 nuxork7Z.net
ウクライナのGitLabがやばいな
881:デフォルトの名無しさん
22/03/16 08:10:03.07 3iPp8Jr+.net
ゲイツもgit 作者も ワクチン派=ナチス
882:デフォルトの名無しさん
22/03/20 18:56:58.51 oCBKTdlK.net
すみません、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が禁止されていたりしますかね?
883:デフォルトの名無しさん
22/03/20 20:08:48.92 pStA9jik.net
サーバー側の receive.denyNonFastForwards の設定で禁止されてる
884:デフォルトの名無しさん
22/03/20 20:17:36.65 XwFj+GPH.net
>>854
git push --delete ~ でリモートブランチ消してpushしなおせばまだワンチャンある
885:デフォルトの名無しさん
22/03/22 00:18:15.54 G4hvFEyv.net
強制pushまだ禁じてるところあるんやね
886:デフォルトの名無しさん
22/03/22 08:24:32.98 OaCGWLhd.net
馬鹿がいるんだから当たり前やろ
887:デフォルトの名無しさん
22/03/22 15:19:11.35 Oh3PkPXA.net
ブランチにアクセス権を設定できるサーバ
888:なら、メインのブランチにはプルリクエスト処理する人だけがアクセス可能にして、強制push禁止と強制ブランチ削除禁止の設定はいらん気もするね でも本家gitにはブランチ単位のアクセス権は無いよね確か
889:デフォルトの名無しさん
22/03/22 18:39:39.96 GWInnMJp.net
>>854
プロジェクトメンバーに周知すればいいんでないの?
890:デフォルトの名無しさん
22/03/25 05:31:45.01 VoO+G8uZ.net
こっそりと周知、ってのは難易度高いな
891:デフォルトの名無しさん
22/03/25 07:14:27.74 iMzzdMMk.net
こっそりする必要はないでしょ
892:デフォルトの名無しさん
22/03/30 21:00:41.82 pZIqlelO.net
pullする前にどれが変更されているか知ることは出来ないの
893:デフォルトの名無しさん
22/03/30 21:03:54.04 sFfsK7BI.net
git ls-remote
894:デフォルトの名無しさん
22/03/30 21:50:58.83 sIJSREW7.net
fetch
895:デフォルトの名無しさん
22/04/01 00:22:46.86 46G1puQR.net
totoiesegit使ってんですけ、コミットしただけでチェックアイコンに変わるんで
pushし忘れることが多いんですけど、区別できないんですか?
896:デフォルトの名無しさん
22/04/01 04:32:18.73 w7Dm7PZW.net
>>866
うん
897:デフォルトの名無しさん
22/04/01 05:21:04.10 vPqr4MnO.net
尊いーぜgit
ごめん言ってみただけ
898:デフォルトの名無しさん
22/04/01 08:03:05.39 4o646iU1.net
Gitsだぜ
すいもあまいもー
899:デフォルトの名無しさん
22/04/01 10:30:17.09 L8R+vRlu.net
トータス使うよりSoucetree使う
900:デフォルトの名無しさん
22/04/02 16:17:20.40 y/uyzFp6.net
リポジトリにあさんが変更をプッシュしたことをいさんはどうやって知れるのですか?
あさんからいさんへメールなりで連絡?
いさんがフェッチなり、プルすれば分かるんですが・・・
901:デフォルトの名無しさん
22/04/02 16:43:53.49 66/F4m6m.net
>>871
本来gitで想定されている正しい使い方としてはメールで連絡
今時の普通のチームならGitHubでpull requestを出す
902:デフォルトの名無しさん
22/04/02 16:46:06.34 eQjRdGtS.net
共有するリポジトリの置き場所に素のgitを使ってない限り、何らかの通知する仕組みはあるだろ?
素のgitでもスクリプト仕込めばできるけど面倒だな「git hooks 通知」でぐぐれ
903:デフォルトの名無しさん
22/04/02 17:04:36.48 y/uyzFp6.net
totoiesSVNの時はフォルダのアイコンが!に変わるから
logを表示させればだれが、どこを変更したか分かるけど
gitの場合、アイコン変わっていないから何時フェッチ、プルすればいいかわからない
こういうもの?
904:デフォルトの名無しさん
22/04/02 17:20:12.10 66/F4m6m.net
>>874
Gitでは、同じブランチの上で複数人が作業することは普通しない
905:デフォルトの名無しさん
22/04/02 17:22:26.59 a7IS8KL2.net
同じことだよ
TortoiseSVNを使っていても他人の変更が勝手に降ってくることはないぞ
これまでほぼ無意識にときどき更新コマンドを実行してたんだろ
Gitでもそれと同じように無意識にときどきフェッチすればいい
リポジトリが新しかったりローカルが汚れているときにコンソールが赤とか黄色とかになる環境を作っておけばさらに分かりやすくなる
906:デフォルトの名無しさん
22/04/02 17:33:56.91 y/uyzFp6.net
>>876
その「更新コマンド」を実行すべきタイミングが分からないんですよ
とりあえずプルすれば、変更されていれば更新されるけど
変更されていなければ更新されない
いちいちメールかなにかで連絡もらえれば、プルするから実害はないんだけど
907:デフォルトの名無しさん
22/04/02 17:37:22.85 OkBLvXjb.net
git push したらvpsのソースが更新されるようにしたのに、ヒミツ鍵でログインするタイプのvpsに変えたらgit pushでエラーが出るようになったわ
908:デフォルトの名無しさん
22/04/02 17:50:45.78 ofyuLHc/.net
>>877
気になった時fetchすりゃいいんだよ。
909:デフォルトの名無しさん
22/04/02 18:18:39.57 y/uyzFp6.net
>>879
1分おきにfetchするアルバ
910:イト雇ったほうが工数的にはいいですね
911:デフォルトの名無しさん
22/04/02 23:09:26.57 ofyuLHc/.net
変な質問だと思ったがネタだったか。四ね。
912:デフォルトの名無しさん
22/04/03 00:33:31.34 TSy6KLqO.net
git reflogを時間指定して実行すると上手くログが取得できないんだが、自分だけ?
git logは普通に動く
913:デフォルトの名無しさん
22/04/03 09:55:27.42 sNbs7j4z.net
>>881
釣られましたねw
914:デフォルトの名無しさん
22/04/03 11:58:15.04 YOg/TQMm.net
気になったらエッチとな?
915:デフォルトの名無しさん
22/04/04 18:26:27.90 uBqMrhkR.net
>>882
reflogで表示される時間はその操作が行われた時間ではなくてその操作の結果のHEADのコミットの時間で、reflogの--afterとかによる表示範囲判定は操作が行われた時間に基づいて判定されるぽいから、変な風に感じる?
HEADのコミットの時間でなくて操作した時間をreflogで表示する方法はあるのかな
916:デフォルトの名無しさん
22/04/05 06:52:00.45 HDipRGT6.net
>>877
俺は開発ブランチにcommitした後にmasterをfetchしてる
で、マージすべき内容ならmergeする
917:デフォルトの名無しさん
22/04/05 06:57:58.21 qPBzPdZO.net
>>886
こういうのが居ると無駄なマージ履歴が残る。
コミットまたはプッシュする前にプルしてマージ完了した状態でプルするルールにしてる。
918:デフォルトの名無しさん
22/04/05 06:58:45.84 qPBzPdZO.net
×プルするルール
◯プッシュするルール
919:デフォルトの名無しさん
22/04/05 07:02:20.74 HDipRGT6.net
>>887
これはfetchかpullのタイミングの話であって、それとこれとは別の話だよ
それはpull request用のブランチにsquashなりすれば解決することだろ
920:デフォルトの名無しさん
22/04/05 07:09:17.66 LSxkXP/U.net
squashするとまた意味が変わってくる
無駄なマージコミットを気にするならpull --rebaseするといい
921:デフォルトの名無しさん
22/04/05 08:27:03.94 Tv9hyPpM.net
内容ごとにブランチを切って、実装完了後にマージしたほうがいい。
こまめにマージする必要あるけど。
922:デフォルトの名無しさん
22/04/05 08:37:26.26 VZWFnuGC.net
rebaseすると途中のコミットが見たことないスナップショットに化けるから諦めてmergeする派
923:デフォルトの名無しさん
22/04/05 10:22:46.93 Ti8ZULSh.net
どうせマージコミットしか見ないからどうでもいいわ
924:デフォルトの名無しさん
22/04/05 12:59:38.64 HRL2Dhl7.net
Git v2.36.0-rc0
925:デフォルトの名無しさん
22/04/10 12:29:54.84 /cWGM6C3.net
Git v2.36.0-rc1
926:デフォルトの名無しさん
22/04/10 12:43:00.27 gTtQQEaq.net
今からGitを始めます初心者の質問です。
Gitに設定するユーザー名、メールアドレスと
GitHubのアカウント作成で指定するユーザー名、メールアドレスは
同じものでないといけないのでしょうか?
927:デフォルトの名無しさん
22/04/10 23:00:07.32 TJ08CsNt.net
ネットでgitをググると
コミットしたらプッシュっする癖をつけようなんて見かけるけど
それなら意味なくね
928:デフォルトの名無しさん
22/04/10 23:03:53.52 OSeViOAV.net
>>897
なんの意味?
929:デフォルトの名無しさん
22/04/10 23:58:14.27 ZMrXNR+Y.net
分散型リポジトリの意味かな?
つーかcommit→pushの流れが癖になるとまずいぞ
develop or masterで作業してるかfeatureブランチをpushすることになる
930:デフォルトの名無しさん
22/04/11 00:51:42.12 1i0W5uZP.net
>>896
同じにしないといけない
違ってるとGitHub上でコミットとユーザーが紐付かない
なおGitHubのメールアドレスは複数設定できる
931:デフォルトの名無しさん
22/04/11 01:06:26.04 Ip9E4gkF.net
いつプルすべきなのかさっぱり分からないんだけど
いちいちフェッチして更新されてたらプルなの?
svnの時はフォルダのアイコンが変わるから、すぐ分かったんだけど
gitはめんどくさくてしかたねー
932:デフォルトの名無しさん
22/04/11 01:21:42.99 IXb9iAbb.net
>>901
フォルダーのアイコンが変わるのはsvnの機能ではないだろw
933:デフォルトの名無しさん
22/04/11 01:26:34.08 FKgiTkDa.net
ちんちんシュッ!シュッ!シュッ!
934:デフォルトの名無しさん
22/04/11 03:26:40.92 UsZcfkXO.net
>>901
そもそもsvnの挙動を勘違いしてん�
935:カゃん
936:890
22/04/11 07:24:40.88 pyEhSslH.net
>>900
レスありがとうございます。
そうしますと、
複数のメンバーでGitHubの一つのアカウント(リポジトリ)を共有する時の
各メンバーを識別するIDは、どこで指定するのでしょうか?
937:デフォルトの名無しさん
22/04/11 07:35:11.19 IXb9iAbb.net
どんなメールアドレスでもpushできるよ
938:デフォルトの名無しさん
22/04/11 08:54:42.93 Ip9E4gkF.net
>>902
>>904
本筋には触れずに、否定をするワラ
939:デフォルトの名無しさん
22/04/11 09:14:16 1i0W5uZP.net
>>905
関係ない。各自が自分のGitHub userに設定済みのメールアドレスでコミットすればいい。
GitHub上で制御できるのは「誰がリポジトリにpushできるか」までで、>>906も言ってるがどんなメールアドレスのコミットが含まれていてもpushできる。
たまたまコミットのメールアドレスがGitHub userと同じならGitHub上でそのユーザーがコミットしたように見えるというただそれだけのこと。
940:デフォルトの名無しさん
22/04/11 14:06:10.85 MP0q4WMO.net
>>905
githubでプライベートリポジトリを複数ユーザで共有する場合は、共有するユーザみんな別々のアカウント作って、誰かが作ったレポジトリに他のユーザを招待して、pushするときにはそれぞれ各ユーザのアカウントで認証された状態ですることになるよね
だから上でもだれか言ってるように、コミットのメールアドレスは認証で使われるわけじゃないから、どんなメールアドレスでもpushできる
しかし、コミットのメールアドレスは重要でないというわけでもなくて、コミット一覧とか表示させたときにコミットのメールアドレスに基づいてユーザ名とか写真を表示したりするので、githubのアカウントに登録してあるメールアドレスをgitの方にも登録しておくほうが良い
941:デフォルトの名無しさん
22/04/11 20:59:30.97 voKtAiO9.net
>>907
少し上のレスを見ればわかるけど、その質問は「また釣りか」と思われてまともなレスは付かない。
942:デフォルトの名無しさん
22/04/13 01:15:32.19 TZC3qPMK.net
とある本の不要になったブランチを削除する手順で
①リモートリポジトリの消したいブランチを削除
②Sourcetreeのフェッチのリモートで消えた追跡ブランチを消去(Prune)
③Sourcetreeの消したいローカルブランチを右クリックして削除
とありますが、①がリモートリポジトリのブランチを削除、
③がローカルのそれだとすると
②の手順にはどんな意味があるのでしょうか
943:デフォルトの名無しさん
22/04/13 02:12:16.50 eS/flNB4.net
ブランチには①リモートブランチ ②(リモート)追跡ブランチ ③ローカルブランチの3種類がある
文脈によってこれらはしばしば混同されるので気をつけていないと混乱する
①はサーバー側にあり、②③はクライアント側にある
②は常に①のコピーで、フェッチするたびに①の最新と同期される
だからネットワークに繋がっていなくてもいつでもリモートのログが見れる
「リモートブランチのログを見る」というとき、正確には①ではなく②のログを見る行為を指す
フェッチしていなければ①②③が全て別のコミットを指すこともある
②を消し忘れると、サーバー側のブランチは削除済みなのに、そのクライアントからはまだリモートブランチが消えていないように見える
944:デフォルトの名無しさん
22/04/13 03:53:52.80 TZC3qPMK.net
>>912
詳しいご説明ありがとうございます!
945:デフォルトの名無しさん
22/04/13 21:31:02.16 Pux5Tg8M.net
Git v2.35.2
946:デフォルトの名無しさん
22/04/13 21:31:48.03 Pux5Tg8M.net
Git v2.36.0-rc2
947:デフォルトの名無しさん
22/04/14 12:56:35.38 DFKHhlAT.net
Git v2.35.3
948:デフォルトの名無しさん
22/04/14 14:21:34.39 yss7HMyT.net
Git v2.36.0-rc3
949:デフォルトの名無しさん
22/04/14 14:56:42.75 5RufjXVH.net
「Git for Windows」のシェルが「bash 4.4」から「bash 5.1」へ ~Vista対応も終了
URLリンク(forest.watch.impress.co.jp)
Windowsで使ってる人(居る?)注意な
950:デフォルトの名無しさん
22/04/14 21:19:31.45 b6yuiJ9V.net
居る?ってどういう意味?
951:デフォルトの名無しさん
22/04/14 21:40:37.08
952:8uWvcswO.net
953:デフォルトの名無しさん
22/04/14 22:20:35.99 iEpp8WdZ.net
折るかーー?
よーし、折るな!ボキッ
954:デフォルトの名無しさん
22/04/14 22:52:34.66 3PT3emFr.net
ここやでトントン
955:デフォルトの名無しさん
22/04/14 23:33:30.30 UyRHFpqd.net
まさかMacなんて使ってんの?
956:デフォルトの名無しさん
22/04/15 00:07:36.02 ssUN7i/L.net
>>923
Windows Mac Linux
全部使ってる
957:デフォルトの名無しさん
22/04/15 00:18:20.61 zUdxudaZ.net
>>924
いいなぁ
958:デフォルトの名無しさん
22/04/15 18:54:21.17 C9bHMdiD.net
GUIのGitクライアントは面倒だよ
なんて言ってる先輩いるだけど
ほとんどコードは書けなくて、コピペしてそのコピペしたコードの意味も分かってない
そんなので、いくらgitが使えても意味なくね
959:デフォルトの名無しさん
22/04/15 19:37:30.49 h1UMySwV.net
>>926
何が言いたいのがわからんが、コマンドラインでGitが使いこなせなくて悔しいの?
コードが書けるのとGitを使いこなせるかどうかは直接は関係無いし、コピペとGitを使いこなして目的が達成できてるのならばそれは意味があることだよ
960:デフォルトの名無しさん
22/04/15 20:07:56.61 PiHpabQE.net
CUIなら同じことを繰り返したり再現するのも容易いし、スクリプトに組み込んで自動化したり本番処理を分けたり他人に渡すのも容易。
GUIも便利だけどCUIにもたくさんメリットがあるのよ
961:デフォルトの名無しさん
22/04/15 21:12:39.95 u9UTRnBL.net
僕も全くプログラム書けないけど
フリーランスのGit屋だぞ
962:デフォルトの名無しさん
22/04/15 21:35:15.77 0DFy/IGY.net
GUIのgit使おうとしたけどわけわからんくて投げたわ
やっぱコマンドラインよ
963:デフォルトの名無しさん
22/04/15 23:40:55 yVftr7r6.net
GUIもせめて自動実行マクロがあればマシなんだけどな。
OfficeのVBAみたいなやつ。
964:デフォルトの名無しさん
22/04/15 23:52:35.13 ssUN7i/L.net
>>931
それgitコマンド使ったバッチファイルやスクリプトでよくね?
965:デフォルトの名無しさん
22/04/16 00:02:24.87 gsNTgUrB.net
コマンドを打ってるだけで仕事してるフリしてる奴いるわ
たかがステージングするのに何分かかってんだよ
それならGUI使ったほうがグイっと終わるだろ
966:デフォルトの名無しさん
22/04/16 00:03:11.07 R5AqqekO.net
gitkだっけ
967:デフォルトの名無しさん
22/04/16 00:17:37.39 pQ5jcgqa.net
CUIだろうとGUIだろうと、どのファイルのどの行をコミットに含めるかは慎重に選べ
ゴミみたいなコミット作ってんじゃねぇ
968:デフォルトの名無しさん
22/04/16 01:06:24.34 dfz3lFMa.net
>>926
gitを否定しようと思ったけどできなかったんだよね?
だからgitを使ってる人を変わりに叩いて
自己満足してるでしょ?バレバレw
969:デフォルトの名無しさん
22/04/16 01:08:00 dfz3lFMa.net
>>933
CUIのほうがGUIよりも快適だからCUIを使ってるんだよ
文字使えば相手に意味を伝えられるのに
絵を書いて伝えたいなんて思わないでしょ?
970:デフォルトの名無しさん
22/04/16 02:42:04 Cn08VBkB.net
GUIで確認してCUIで実行するのが一番効率良くね?
GUIは一覧性が高いが、作業効率はCUIの方が良い
971:デフォルトの名無しさん
22/04/16 03:09:40.28 +A5PZLb9.net
st=status -s とか
ll=log --date-order --oneline --graphとか
alias設定すれば一覧性で困ることはないぞ
972:デフォルトの名無しさん
22/04/16 03:40:01.37 gsNTgUrB.net
それくらいのタイプ量ならエイリアス設定する方が面倒だわ
973:デフォルトの名無しさん
22/04/16 03:55:07.91 MmeJHHfa.net
道具の方にこだわってる奴って本業は全然できない奴多いよな
この5番、30万だぞってイキってて100程度で回ってるガキ多すぎ宿題
974:デフォルトの名無しさん
22/04/16 05:50:52 pQ5jcgqa.net
道具にこだわらないからCUIでgit�
975:ネんだろ GUIのはOSによっては使えない場合もあるしいちいち覚えるの面倒だし CUIなら設定ファイルちょろっとコピーすればいつもと同じ感覚で使えるし git使わないって選択肢はもう無しな gitはもう道具というより共通フォーマットだ
976:デフォルトの名無しさん
22/04/16 05:56:08 pQ5jcgqa.net
>>939
その辺は頻繁に使うんでエイリアスじゃなくて3~4文字のシェル関数だわ
とくにgit logの方は--pretty=format:~も指定したいんで手打ちはありえん
977:デフォルトの名無しさん
22/04/16 10:28:49.22 pKuJ7S+c.net
基本的にCUI派だけどログ出していくつかdiffを見るみたいな操作はGUI使うなあ
これをCUIで高効率でやる手段があるなら知りたい
978:デフォルトの名無しさん
22/04/16 11:07:45.89 gsNTgUrB.net
>>942
CUIかGUIかなんて問題なのか
どっちでも同じじゃん
やっぱりコマンドをタイプしてる方がカッコいいと思うタイプ?w
979:デフォルトの名無しさん
22/04/16 11:10:09.03 smzxZJvo.net
>>945
コマンドをタイプするのはかっこいいと思ってしまったから
お前はそんな書き込みをしたんだよね?
980:デフォルトの名無しさん
22/04/16 11:12:54.01 gsNTgUrB.net
いや俺はvscode一択
981:デフォルトの名無しさん
22/04/16 11:16:03 qSyY7sm9.net
あるある
コマンドを使ってるカッコイイと勘違い
Linuxを使ってるカッコイイと勘違い
ダークテーマを使ってるカッコイイと勘違い
vi emacsを使ってるカッコイイと勘違い
982:デフォルトの名無しさん
22/04/16 12:28:47.16 NWlFBoGL.net
TortoiseGitしか使ってなくてすいません
983:デフォルトの名無しさん
22/04/16 12:44:01.14 gsNTgUrB.net
カコイイ
984:デフォルトの名無しさん
22/04/18 20:18:29.80 lvtGJgyq.net
CUIかGUIかなんてどーでも良いことには一切こだわらず
俺にとって使いやすい方法を採用してる俺様カコイイ
985:デフォルトの名無しさん
22/04/19 12:06:40 +aQMqQh4.net
>>948
そのとおり、何かを使っているからカッコイイのではない
俺だからカッコいいのだ
986:デフォルトの名無しさん
22/04/19 17:55:42.79 2NjgmpR8.net
Git v2.36.0
987:デフォルトの名無しさん
22/04/19 23:15:59 fQcWHs5l.net
プルリクって要る?
製品名出せば誰でも知ってるソフトの開発でも
目クラマージだぞ
正直、いちいちプルリク出すくらいなら、そっちでマージしてほしい
権限考え直してほしいわ
988:デフォルトの名無しさん
22/04/19 23:29:05.23 CsQiBOLb.net
>>954
gitにそんな機能はありません
989:デフォルトの名無しさん
22/04/20 15:44:31 9cmYpPww.net
エビル(evil)マージ
990:デフォルトの名無しさん
22/04/20 18:45:19.22 aTy1WRu8.net
アークマージって要る?メリットは何ですか?
→ イオナズンが使えます
991:デフォルトの名無しさん
22/04/21 15:42:47.36 Ex423fK8.net
先輩「CUIのほうがgitの機能をすべて使えるからいいよ」
おれ「pullするときにディレクトリを指定するのは、どんなコマンドを実行すればいいですか?」
先輩「git pullしかやったことないから分からない」
おれ「・・・」
992:デフォルトの名無しさん
22/04/21 17:41:01.53 haKrn/PJ.net
>>958
別に先輩おかしくないけど
993:デフォルトの名無しさん
22/04/21 18:49:26.99 BFaC4LhO.net
ディレクトリを指定してpullする機能なんて無いし
pullに引数指定しなければいけないような状況はfetchとmergeを使うから、おれもgit pullの引数有りの挙動は把握してない
994:デフォルトの名無しさん
22/04/21 18:55:10.99 Ex423fK8.net
おまえらって本質がわかないのか?
pullかどうかなんてのは本質でない
git hoge
でも論理は同じ
995:デフォルトの名無しさん
22/04/21 19:16:46.07 KtzHzoax.net
ちょっと例えがアレだったね
シニカルなことを表現するときはバシッと一発で決めてかないとこういう残念な雰囲気になる
それもまた世のことわり
996:デフォルトの名無しさん
22/04/21 19:27:25.31 BFaC4LhO.net
CUIの方がgitの機能がすべて使えるのは正しい
CUIで使う人が全てのコマンドのオプションを知ってる必要なんてない
CUIで使うのを難しく考え過ぎじゃないかな?
どのgitコマンドで何ができるかを把握できてれば十分で、細かい指定は大雑把に覚えてればいいよ
良く使う操作は短いエイリアスやシェル関数にしてしまうし、普段あまりやらない操作はコピペでもいいし、man見て調べればいいし、いまのシェルは履歴も補完も使いやすいからgitの長いオプション名なんて覚える必要も無い
997:デフォルトの名無しさん
22/04/21 19:27:50.71 BFaC4LhO.net
別にCUI/GUIに限らないけど、どのgitコマンドで何ができるか何が起こるかを理解できているのが重要
gitのコマンドは後戻りできるものが多くて、その方法を理解できてると楽に使える
後戻りする系の手段はあれこれ用意されてるけど、CUIの方が充実してるかな
998:デフォルトの名無しさん
22/04/21 21:14:31.11 Ex423fK8.net
git pullしか実行したことないなら、GUI使ってもボタン一発だろw
999:デフォルトの名無しさん
22/04/21 21:34:43.05 F4v8aJSe.net
git pull はコンフリクトで失敗することがあるからボタン一発で済むとは限らない
1000:デフォルトの名無しさん
22/04/21 21:37:37.80 ZCLpZV4/.net
CUIに劣等感感じる必要ないんやで
どっちも便利だから好きな方使え
1001:デフォルトの名無しさん
22/04/21 21:46:02.93 FUPABV2N.net
GUIとCUIの併用だな
なんでどっちかしか使えないと考えるんだろう
1002:デフォルトの名無しさん
22/04/22 00:44:19.39 a+ReXgZI.net
ブランチが必要な理由が分からない
リモートからクローンしてきている時点で、origin/masterとは別のリポジトリが個々人に存在するんだし
コミットも個々人のリポジトリに対して行うわけでしょ
一度もブランチ生やしてなんて一度も指示されたことないわ
1003:デフォルトの名無しさん
22/04/22 02:04:37.85 /nIvhavJ.net
ブランチがないとお互いのコミットを観測することができない
人の変更を見ようと互いにpush+pullすると常にmergeが伴うので、いわゆる観測者効果みたいな面倒くささが生まれる
プロジェクトの規模やリリースの複雑性が増すにつれてより困る
よくある例では、次バージョンの開発を初めている人がいるときhotfixを出せない
featureブランチのpushはオアズケを命じられて、その間ソースレビューも滞る
ブランチをforkに置き換えても同じ
1004:デフォルトの名無しさん
22/04/22 09:52:33.39 ZbT6iK7O.net
各個人のGitHubアカウントにforkしてリポジトリ間のpull requestでマージしていく流派も存在する
本来のGitやGitHubの想定する使い方としては正しくてOSS文化的にも好ましいやり方ではあるんだが、企業での開発ではほとんど採用されない
単一のGitHubリポジトリで中央集権的に管理した方が楽だからね
1005:デフォルトの名無しさん
22/04/22 12:20:17.30 dVlUoLXX.net
AからA'とBの2つを作りたくなったときって、
ブランチなしでどうやるんだろうな
1006:デフォルトの名無しさん
22/04/22 12:30:42.99 wri6W8iQ.net
>>969
ブランチは「実装していること」を表すので、複数の機能を並行して開発するときは必須。
よくあるのは
・通常の開発版とリリース版/デバッグ版を分けて、デバッグリリースを早くする&開発版への取り込みを管理しやすくする
・開発する機能ごとにブランチを用意して、互いの干渉を減らす&マージをやりやすくする
あたり。
1007:デフォルトの名無しさん
22/04/22 14:20:44.25 QpAASndC.net
自分のアカウントにforkするスタイルの開発しか経験ない人が
単一GitHubリポジトリ運用な会社に入ってforkして怒られるのはGitHubあるある
1008:デフォルトの名無しさん
22/04/22 21:56:45.85 RSUrvfLc.net
fork って
1009:何? git 用語に翻訳して。
1010:デフォルトの名無しさん
22/04/22 22:05:44.96 0DWZpb5V.net
clone
1011:デフォルトの名無しさん
22/04/22 22:16:51.65 RSUrvfLc.net
>>976
clone したら怒られるの? マジか? それ本当に git 使ってるの?
1012:デフォルトの名無しさん
22/04/22 22:48:01 4bmaw9DX.net
forkがcloneだからといってcloneがすべてforkなわけがない
1013:デフォルトの名無しさん
22/04/22 23:04:27 a+ReXgZI.net
おまえらって、gitについて講釈ばかりたれてるけど
全く本業ができないわけじゃないよなw
うちの会社にもいるわ
講釈たれてる暇があるならさっさとコーディング終わらせろよwwwww
1014:デフォルトの名無しさん
22/04/22 23:12:27.31 UMBGLRP1.net
根拠のないレッテル貼りによる謎のマウンティング
1015:デフォルトの名無しさん
22/04/22 23:30:46.77 pOr/JbKA.net
>>977
forkはgithubの別アカウントへリポジトリをcloneする
俺らはpushしてpull requestするとか素人さんを混乱させる戯言をよく使うが、本来のgithubのpull requestはforkした自分のアカウント下のリポジトリのブランチをpullしてmergeしてもらうことをrequestする
pushしてpull requestは正しくはpushしてmerge requestと言うべきで、Gitlabは正しくmerge requestと呼んでいたと思う
merge requestで作業してる職場で、pull requestしたら怒れるということだろう
1016:デフォルトの名無しさん
22/04/23 00:07:18.92 iISBdnEI.net
>>981
何を言ってるかわからない。
pull というのは「 fetch して merge 」という操作をまとめてやるだけのコマンドなので当然 merge の意味を内包してる。
fetch せずに merge って言いたいの? それってどうやって対象を持ってくるの?
自分のリポジトリから持ってくるだけなら他人から request される必要ないし?
1017:デフォルトの名無しさん
22/04/23 00:13:01.25 iISBdnEI.net
ちなみに push というのは remore への merge を指示するコマンドな。
1018:デフォルトの名無しさん
22/04/23 00:51:13.69 1bxGV6XJ.net
>>982
いや同一のGitHubリポジトリ上でpull requestをマージするときにfetchは要らないでしょ
>>981の言うとおり、本来リポジトリを跨がるからfetch+mergeでpullなんだよ
1019:デフォルトの名無しさん
22/04/23 00:59:48.76 HOOXt/T3.net
>>982
「本来のgithubのpull requestはforkした自分のアカウント下のリポジトリのブランチをpullしてmergeしてもらうことをrequestする 」
これはちょっと間違えた
fetchしてmergeしてもらうことをrequestするからpull requestね
それでmerge requestだけど、>>984の言うようにすでに共有ブランチへpush済みのブランチをmergeすることをrequestするから、mergeだけrequestでfetchはrequestしない
自分が仕事で使うのは主にこっち
>>983
pushは厳密に言えばFastForwardのmergeだけど、pushのことをmergeとはあまり呼ばないな
1020:デフォルトの名無しさん
22/04/23 01:35:18.29 iISBdnEI.net
>>985
push した時点で merge されてるんでは?
push はデフォルトでは fast foward のみだけど、remote の設定によって普通の merge もいける。
共有リポジトリ上の feature branch を共有リポジトリ上の master branch に merge みたいな話をしたいのかもしれないけど、通常は共有リポジトリ上で完結させたりしない。
1) 共有リポジトリ上の feature branch を手元に fetch
2) fetch した feature branch を手元の master btanch に merge
3) 手元の master branch を共有リポジトリへの push
という手順を取る。
1) + 2) が pull 動作。fetch 無しは個人の作業リポジトリへの push が必要になるので普通やらないし、できない。
1021:デフォルトの名無しさん
22/04/23 01:58:40.02 HOOXt/T3.net
あれ?もしかしてgithubだと違うのかな?自分が仕事で使うbitbucketの共有リポジトリでやる場合のデフォルトでは、プルリクエストの承認とマージは共有リポジトリ上で完結する
もちろんローカルでfeature branchをmasterへマージしてmasterをpushしてもいいんだけど、それは正式な手順では無い
githubでも同じことできるよね?
1) 共有リポジトリ上に feature branch を作成
2) 共有リポジトリ上の feature branch を手元にfetchしてcheckoutして修正をコミット
4) 手元の feature branch を共有リポジトリ上の feature branch へ push
5) プルリクエスト(マージリクエストだけど)をブラウザ上で作成
6) マージ権限者がブラウザ上でリクエストを承認してマージする
feture branchは正式にはブラウザで共有リポジトリ上に作るけど、ローカルで作ってpushしてもいい
1022:デフォルトの名無しさん
22/04/23 02:02:56.04 HOOXt/T3.net
>>986
1023:pushでFFじゃないmergeってできるの?できても今は普通しないでしょ FFでmergeできない場合には、ローカルでmergeしてFFにしてpushするか、push -sで上書きが普通だし
1024:デフォルトの名無しさん
22/04/23 02:12:55.85 iISBdnEI.net
>>988
できるけど、おすすめではない。
ただ push は merge と同じ機構という点が理解できてれば良い。
1025:デフォルトの名無しさん
22/04/23 02:14:20.66 XK6u/IcU.net
普通はローカルでマージしたものをプッシュする
1026:デフォルトの名無しさん
22/04/23 02:23:24.07 iISBdnEI.net
>>987
いきなり共用リポジトリ上でマージしたりしない。そういう運用ルールの組織があるとしたらかなり頭悪い。git の使い方が半分しか理解できてない。
共用リポジトリは問題があってもロールバックできない(超めんどう)なので、共用リポジトリの master には手元でのテスト等が終わって問題ないもののみを入れるのが普通。
1027:デフォルトの名無しさん
22/04/23 02:38:54.73 HOOXt/T3.net
ローカルでマージしてmasterへpushするって言ってる人たちはmasterへのpush権限をみんなが持ってるの?
1028:デフォルトの名無しさん
22/04/23 02:43:01.86 iISBdnEI.net
master へ push する権限を持ってる人がローカルで master に merge する作業をする。当然の話。
1029:デフォルトの名無しさん
22/04/23 02:47:09 1bxGV6XJ.net
分野にもよるのかもしれんが、少なくともWeb系はGitHub上でマージするのが普通
直接mainにマージしたくないなら
1030:デフォルトの名無しさん
22/04/23 02:49:26.76 HOOXt/T3.net
>>991
もちろんプルリクエスト出す段階でローカルにテストは済んでる前提だし、masterへマージされた後にそれがダメならrevertするよ?
プルリクエストを承認できてmasterへマージできる人は特定の人だけだし、それをマージする前にテストが済んでるかどうかとかをリクエスト者に確認する
そのためにプルリクエスト上でいろいろやりとりできるようになってるわけだし
というか>>986とかはgithubを単にgitのリポジトリとして利用するだけのやりかただよね?別にgithub使う必要無くない?なんでgithub使ってるの?
1031:988
22/04/23 02:51:33.02 1bxGV6XJ.net
失礼
直接mainにマージしたくないならdevelopブランチ等を間に置く
各自がいちいちローカルでマージして手元でテストなんてしてたら、みんなそれぞれ状態がバラバラで何テストしてるのか分からなくならないか?
特定の一人だけがmainにマージできるような超集権的な体制でないと成立しないと思う
1032:デフォルトの名無しさん
22/04/23 02:52:15.37 HOOXt/T3.net
>>995
うちのやり方では「master へ push する権限を持ってる人がローカルで master に merge する作業をする。」か「ブラウザ上でマージしてしまうか」はその権限持ちがプルリクエストを見て判断する
1033:デフォルトの名無しさん
22/04/23 03:00:56.62 HOOXt/T3.net
統合的なテストはmasterにマージされた後に動かして、それでダメならrevert
統合的なテストが済んだところはtagが打たれてリリースはそのtagがあるとこまでしか行われない
1034:デフォルトの名無しさん
22/04/23 03:22:27.74 HOOXt/T3.net
久しぶりだけど次スレ立ててみる
1035:デフォルトの名無しさん
22/04/23 03:27:15.61 HOOXt/T3.net
次スレ
Git 18
URLリンク(mevius.2ch.sc)
1036:デフォルトの名無しさん
22/04/23 03:39:41.93 /lJ77CU4.net
>>1000
乙
1037:デフォルトの名無しさん
22/04/23 09:32:57.73 3glRXhKn.net
>>979
劣等感抱いてるんだね。わかるよ
1038:デフォルトの名無しさん
22/04/23 09:43:28.49 aEJ0G9VA.net
未だsvnから離れられない人かな
1039:デフォルトの名無しさん
22/04/23 11:37:43.64 BMKo0y1z.net
いえ、ディレクトリコピーで済ませています
1040:デフォルトの名無しさん
22/04/23 14:25:06.82 tAGVUJOK.net
Git 18
スレリンク(tech板)
1041:デフォルトの名無しさん
22/04/23 14:36:55.00 BMKo0y1z.net
質問いいですか?
1042:1001
Over 1000 Thread.net
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 598日 2時間 18分 27秒
1043:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています