Git 16©2ch.net

レス数が950を超えています。1000を超えると書き込みができなくなります。
2017/08/15(火) 00:54:07.61ID:brNIopECE
ソースコード管理を行う分散型バージョン管理システム、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 14
http://echo.2ch.net/test/read.cgi/tech/1457412803/
Git 15
http://mevius.2ch.net/test/read.cgi/tech/1486239735/
VIPQ2_EXTDAT: checked:vvvvvv:1000:512:----: EXT was configured
2020/01/15(水) 23:04:03.22ID:k9iUnicj0
はちゃめちゃに大きくなったリポジトリの整理でgc, filter-branchなんかは使わなきゃいけないときがあるね。
大体開発もクライマックスで泣きながらやる羽目になるイメージがあるけど。
2020/01/16(木) 08:30:24.22ID:Q/Kq6WCRa
>>868
神経質でええカッコしいの俺にとっては重要機能
2020/01/16(木) 13:31:27.65ID:G3KWlD+Dd
rebaseは-i以外めったに使わないな
2020/01/16(木) 21:01:11.48ID:J+/qaxiI0
遅くなりましたが皆さんありがとうございます、なんとなく枝を繋げればいいや
というイメージでしたがリセット機能や消去機能こんなに充実してるんですね。
正直広まってる理由オープンかつコストが掛からない上有名なソフトが集まっているから
だと思ってたんですが、コマンドで大体できるしGUIも綺麗ですしそこらのソフトウェアが
内蔵してる管理機能より遥かに有用なことを色々聞いて実感しました。
2020/01/18(土) 19:37:12.70ID:gdI50zyB0
masterブランチをpullし忘れてmergeがめんどくさくなる時あるんですが、どうすればいいですかね?
874デフォルトの名無しさん (アウウィフ FF21-otum [106.171.73.72])
垢版 |
2020/01/19(日) 13:01:12.04ID:ehZNNwbSF
rebase
2020/01/20(月) 20:23:44.70ID:egaGjlTX0
>>873
pullを忘れない
2020/01/20(月) 21:58:48.20ID:DbNr2/Ajr
rebaseは下手すると似たところで何度も競合して余計面倒になるような
2020/01/20(月) 22:06:36.16ID:hWOi4sNW0
mergeがめんどくさくなった時点で気付くだろうからそこでやり直せばいい。
2020/01/27(月) 22:52:01.17ID:eRzXcwZO0
patch
2020/02/16(日) 11:10:07.51ID:v4WmcUGja
gitでファイル分割ってどうすりゃいいんだ

//old.cs
class Foo {...}
class Bar {...}

↑これを↓こうしたい

//foo.cs
class Foo {...}

//bar.cs
class Bar {...}


git mv old.cs foo.cs
cp foo.cs bar.cs
git add bar.cs
git commit
vim foo.cs # class Barを削除
vim bar.cs # class Fooを削除
git commit

これだとFooは履歴を辿れるけどBarは履歴を辿れないので困る
880デフォルトの名無しさん (ワイーワ2 FF3a-BDVY [103.5.142.120])
垢版 |
2020/02/16(日) 11:46:34.81ID:nYOrfTm7F
https://stackoverflow.com/questions/47401843/git-copy-file-as-opposed-to-git-mv
https://stackoverflow.com/questions/16937359/git-copy-file-preserving-history
https://thinca.はてなぶろぐ.com/entry/20090217/1234799036
2020/02/17(月) 19:49:42.59ID:uNPszME30
初歩的な質問で申し訳ないんだけど教えてください
今小さなプロジェクトを個人で動かしてて、部署のファイルサーバの自分のフォルダにリモートリポジトリを置いて、visual studioでコミットしてプッシュしてみたいな単純な使い方してます
それで今度チームでやることになってgithubとかgitlabとかの導入を考えているのですがプルリクエストというのがよく分かりません
色々サイト見ているのですがプッシュしたあとにプルリクエストを作成して……みたいなこと書いているんですが、プッシュしたらリモートリポジトリ変更されちゃいますよね?
プルリクエストされた担当者がコードをチェックするならプッシュの前じゃないといけないのではと思うのですが
よろしくおねがいします
2020/02/17(月) 19:59:10.01ID:TyLv2qwpd
ブランチの概念も知らないとみた
2020/02/17(月) 20:37:06.60ID:y136Nw0W0
>>881
別ブランチにコミットしたものをpushするんだよ。
んでもってそのブランチに対してプルリクエストする。
2020/02/17(月) 20:58:00.67ID:+X1gGa0lM
o - o - o - o <- ローカル/master, リモート/master
\ o - o - o <- ローカル/ブランチ1

ローカル/ブランチ1をpushするんだよ。
ブランチの切り方はgit branch --help見てね。
チーム開発の記事を読んでおくといいかもね。
ブルリクについてはgithubとかの開発について調べてみるといいよ
2020/02/17(月) 22:08:10.05ID:eqxbKRrg0
Git 2.25.1
2020/02/17(月) 22:41:22.23ID:uNPszME30
>>883-884
あぁぁそういうことですか。あ、いや自分でやってるときはgithub flowでしたっけ。masterとdevelop切ってそこからfeature切ってみたいなやり方してたんですけど
>>884だとリクエスト受けた側がmasterにマージする感じになってますけどmasterって製品版だからあまりいじっちゃまずいんじゃありませんでしたっけ。マージ先は受付側が決めるってことでいいんですかね
それと別ブランチ切らずにmasterブランチにいじってプッシュしてきたりしたらまずいと思うんですがそれは拒否できたりするんですかね
887デフォルトの名無しさん (ワイーワ2 FF3a-BDVY [103.5.142.122])
垢版 |
2020/02/18(火) 12:20:35.45ID:r+eOvEZJF
pull request 来てそのまま merge して repository 壊すタイプ
2020/02/18(火) 12:31:37.80ID:pMNjUdCaM
レポジトリは3つあるよ。
1. プルリクエスト受ける側 (オーナーA)
2. そこからforkして、じぶんのリモートになるレポジトリ(オーナーB)
3. 2からローカルにcloneしたレポジトリ(オーナーB)

pushは2と3のやりとりで、featureブランチ開発してpush。そのブランチをプルリク出して、レビュー。プルリクはGiHub/GitLabの操作。コードが良ければ、1のオーナーが2のブランチを1へマージ(っていうかpull)。

その後にmasterにマージするかは1の人次第だよ。masterの運用は、1の人が考えればいいよ。どんな開発かわからないけど、普通はデプロイするときにmasterにマージするんじゃないかな。
2020/02/18(火) 17:35:26.84ID:+p1UhD0YM
gitって初心者には難しくないですか?
まともなレベルと規模のチーム開発を経験しないと、その機能がなんのためにあるのかイメージし辛いし
こういうのってどうやるの?って毎度毎度ググる日々…
2020/02/18(火) 19:44:21.29ID:2AC9Ct1n0
無理してでも覚えてもらう以外なかろう。
pull, push, add, commit, checkout, status, diff
これくらいをとりあえず覚えてもらって、困ったら聞いてもらうようにするとか。
2020/02/19(水) 08:12:48.02ID:EqrEbewg0
>>888
理解しました。1.と2.が別物という認識がありませんでした。なるほど何分一人で一つのリモートに対してずっとやってきてたもので
2020/02/19(水) 15:14:55.91ID:EL2IXwnU0
リポジトリ壊して怒られたことある人います?
2020/02/19(水) 18:44:25.95ID:glv7RxyWd
いませんよ
2020/02/20(木) 09:20:40.65ID:TFr3ahU9M
壊されて怒ったことなら
895デフォルトの名無しさん (アウウィフ FF57-IPX/ [106.171.73.169])
垢版 |
2020/02/20(木) 10:51:36.80ID:sbHTvmgoF
リモートのが壊れただけなら
自分のところにある正しいものをpush
2020/02/20(木) 14:25:46.13ID:mSs43Khqa
リポジトリ壊すとハカイダーの称号が与えられる
2020/02/20(木) 18:06:20.23ID:Nllb9nDe0
わりと push -f を気軽にやるのなとビビったことはある
2020/02/20(木) 20:06:31.80ID:tIiyieq40
>>793
遂に、先月GCCのリポジトリがGit に移行完了した模様。


It's 2020 And GCC Has Finally Converted From SVN To Git
Written by Michael Larabel in GNU on 12 January 2020 at 07:31 AM EST

https://www.phoronix.com/scan.php?page=news_item&;px=GCC-Is-On-Git
2020/02/24(月) 17:00:59.72ID:prJq+pJl0
githubの使い方覚えようと思ってsourcetreeとかGitKrakenとかCUIでやるかとか色々検討したけど結局いつものVisualStudioにエクステンション突っ込むので落ち着いてしまった
だめだVSに完全に調教されている。俺は軟弱なプログラマだ
900デフォルトの名無しさん (アウアウエー Sa9f-IPX/ [111.239.50.235])
垢版 |
2020/02/25(火) 03:43:59.15ID:4Jcf/lZea
すれち
2020/02/25(火) 15:38:12.24ID:gwHrzvDTM
ツールの話はスレチなの?
2020/02/25(火) 15:50:01.31ID:FJnE0Xtt0
>>901
GitHubの話がスレチなんじゃないか?

ソースコード ホスティング総合【GitHub,GitLab,Bitbucket等】
https://mevius.5ch.net/test/read.cgi/tech/1531824290/
2020/02/25(火) 16:58:47.93ID:vci/itY3d
>>902
でも>>899の言ってる内容はGithub限定の話ではないけど
2020/02/25(火) 17:41:25.91ID:ZS5k1kfLM
気にするほどのことはないので大丈夫だよ。
2020/02/26(水) 00:13:19.51ID:XrSS+Vu/M
たまにいるgithub=gitな人でしょ
2020/02/26(水) 22:08:46.35ID:o2Xk4smZa
このスレって常連は10人位か?
2020/02/27(木) 11:42:52.83ID:Xz7O1QseM
またまたご冗談を
908デフォルトの名無しさん (ワイーワ2 FF32-7qQN [103.5.142.232])
垢版 |
2020/02/27(木) 15:12:04.24ID:G6pyHvdgF
点呼
1
2020/02/27(木) 17:14:18.54ID:nN94+lnK0
点呼禁止
2020/02/27(木) 23:48:55.50ID:wPwgfJj10
点呼 2
2020/02/28(金) 00:08:56.37ID:6gK8rCEI0
なんやかんやありまして
2020/02/28(金) 17:17:41.91ID:+ASYUl1F0
点呼3
2020/02/28(金) 21:50:18.50ID:0nTCvSdoa
オレが3人分になる…
2020/02/28(金) 22:34:38.56ID:K4ZcleDWd
ここまで俺の自作自演
2020/02/28(金) 23:52:33.83ID:R/ov6bzS0
でんこ
10
2020/03/02(月) 15:54:06.71ID:fpMRqgdb0
点呼4
2020/03/06(金) 19:58:58.60ID:g+1tzXEN0
Git v2.26.0-rc0
918デフォルトの名無しさん (ワッチョイ 9f2f-jOgt [61.115.215.117])
垢版 |
2020/03/08(日) 17:37:29.18ID:0owj/E6o0
https://opensource.com/article/20/3/git-cola
Make Git easy with Git Cola
Get started with Git Cola, a graphical user interface for Git.
2020/03/12(木) 14:52:28.29ID:ns5NBKkpM
Qiitaだけでも、git入門、git基礎、いまさらgitについてまとめてみた的なのが乱立してる時点で
初学者に理解されにくい糞仕様が存在してるのではと思われそう。
2020/03/12(木) 18:00:18.56ID:qQgprVyja
CUIってだけで難しいと思われるこんな世の中じゃ
921デフォルトの名無しさん (ワッチョイ e3ad-PWNQ [27.139.41.170])
垢版 |
2020/03/12(木) 18:46:36.40ID:f2H7WA/80
管理者が使うコマンドとフローを制限してやる必要があるな
あと定番で使うコマンドのオプション指定がハイフン2つなのはイケてないと思う
2020/03/12(木) 22:13:50.27ID:+EH0vN99M
ハイフン2つのオプションの方が自動補完しやすいから楽じゃん
2020/03/13(金) 14:04:45.27ID:NWduylWPM
GUIがなのはCUIが使えない人に対するハラスメントだと言われたことある
2020/03/13(金) 14:46:24.17ID:60Tos3d2M
CUIおじさんとORM嫌いおじさんとstaticおじさんて同じ人?
925デフォルトの名無しさん (ワイーワ2 FF13-LOeD [103.5.142.235])
垢版 |
2020/03/13(金) 18:06:34.24ID:jvKiI+vVF
gitでcuiの人はいくらでも居るでしょう
2020/03/13(金) 18:44:41.16ID:yORqQ+vG0
Windows 10, WSL, Ubuntu 18.04 では、最初から、git が入っている

Ruby のバージョンマネージャー、rbenv をインストールしたけど、

rbenv-installer の説明通りに、以下を実行する

curl -fsSL https://github.com/rbenv/rbenv-installer/raw/master/bin/rbenv-installer | bash

このシェルスクリプト内で、勝手に、git を使ってる!

git init
git remote add -f -t master origin https://github.com/rbenv/rbenv.git
git checkout -b master origin/master

git clone https://github.com/rbenv/ruby-build.git "${rbenv_root}/plugins/ruby-build"
2020/03/18(水) 20:56:46.19ID:X2BFZ32q0
Git 2.25.2
2020/03/23(月) 22:28:27.90ID:MlIXvfRM0
Git v2.26.0

https://github.blog/2020-03-22-highlights-from-git-2-26/
2020/03/25(水) 21:26:50.14ID:sijGTrx/0
「Git 2.26」リリース、git rebaseのデフォルトバックエンドが変更される
https://mag.osdn.jp/20/03/24/150000
2020/04/23(木) 02:13:07.87ID:mmt09PKY0
git が難しいのは利用グループごとに使い方が異なっていて標準の使い方がないからだよ。
応用の効く多様性のあるツールという利点なんだけど、自分たちの使い方だけが唯一の正解と思っているアホが多すぎる。
2020/04/23(木) 22:25:15.34ID:qMI2WavH0
>>930
どうしたの?急に
何かつらいことでもあったの?
2020/04/24(金) 03:25:53.92ID:AmZH8Mz00
まあ、Excelも難しいし、インターネッツも難しいよな
標準の使い方がないから
2020/04/24(金) 03:39:09.00ID:Afm3tUrY0
Excelの標準的な使い方は方眼紙だろJK
934デフォルトの名無しさん (ワッチョイ 7fad-h7Ku [27.139.41.170])
垢版 |
2020/04/24(金) 07:47:52.32ID:rM9gQYtA0
ExcelもXML形式になったから
Gitで差分管理できるようになるといいなあ
2020/04/24(金) 09:33:14.31ID:Afm3tUrY0
xlsxをzip展開した状態でリポジトリに入れればいいのかな
2020/04/24(金) 09:42:03.81ID:o/l2oITT0
VSCode の、Git の拡張機能で、差分表示できないの?
2020/04/24(金) 10:57:17.04ID:A9aEYiqd0
>>930
同意。git自体はかなり使いやすいツールだと思う。
最近気になるのは若い連中がなぜかSIerみたいな運用を好むってところかな。
それやりたいならsvnでも使ってりゃいいのにと思う。
2020/04/24(金) 11:05:24.68ID:agN2oJUo0
>>937
具体的にはどういう運用?
2020/04/24(金) 14:09:48.24ID:A9aEYiqd0
mergeまでにあほみたいな数の承認の山が必要な運用
2020/04/24(金) 14:26:44.63ID:agN2oJUo0
具体的には?
2020/04/24(金) 14:39:23.40ID:A9aEYiqd0
なんだただの馬鹿か
2020/04/24(金) 14:40:50.75ID:Ujoqag8S0
使い方が間違えてるなら指摘すればいいのに
2020/04/24(金) 15:27:46.99ID:agN2oJUo0
>>941
どうやって承認してるかも言えないの?
2020/04/24(金) 15:28:58.68ID:agN2oJUo0
まさかGitHubのコードレビュー機能が嫌だとかそういうレベルの話?
2020/04/24(金) 17:54:22.49ID:0ml75oG6a
>>934
コンフリクトしたときに手動マージする自信がないなぁ
946デフォルトの名無しさん (ワッチョイ 0b2c-aEdY [153.194.236.234])
垢版 |
2020/05/05(火) 09:06:55.45ID:rwJ86+M00
たにぐちまこと

Git+GitHub入門 #01:リポジトリーの作成とコミット
https://www.youtube.com/watch?v=_PyuylNk64o&;list=PLh6V6_7fbbo_M3CqTeJvuXB08--fibyBu

YouTube に、分かりやすい動画がある
2020/05/16(土) 15:44:47.91ID:o1F7OPB+0
Git v2.27.0-rc0
2020/05/21(木) 03:32:13.74ID:miYubpnq0
脆弱性?
949デフォルトの名無しさん (ワッチョイ 2ab9-4KSb [123.48.128.206])
垢版 |
2020/06/01(月) 20:08:44.93ID:FNfjc0Rl0
リモート追跡ブランチは全コミットオブジェクトやファイルを含んでるの?
一部メタデータだけとかじゃなく?

つまりリモート追跡ブランチがリモートリポジトリの最新状態を反映していれば、
オフラインでもリモートリポジトリの最新状態を(リモート追跡ブランチから)ローカルリポジトリに反映できる?
950デフォルトの名無しさん (ワッチョイ 2ab9-4KSb [123.48.128.206])
垢版 |
2020/06/01(月) 20:11:17.66ID:FNfjc0Rl0
ローカルリポジトリじゃないな。
オフラインでもワークツリーにリモートリポジトリの最新状態を反映できるか?
2020/06/01(月) 20:12:00.12ID:yf3+THP3M
できる
952デフォルトの名無しさん (ワッチョイ 2ab9-4KSb [123.48.128.206])
垢版 |
2020/06/01(月) 20:15:32.26ID:FNfjc0Rl0
https://qiita.com/uasi/items/69368c17c79e99aaddbf
これのmasterとかmy-local-fooは何というんだ?
953デフォルトの名無しさん (ワッチョイ 2ab9-4KSb [123.48.128.206])
垢版 |
2020/06/01(月) 21:15:21.19ID:FNfjc0Rl0
1)リモートリポジトリ無しで自分のPCだけでgitを使っている場合、
リモート追跡ブランチは一切存在しない?

2)その場合、自分のローカルリポジトリからcloneすることは可能?
つまりGitは次々と拡散的にcloneしていけるものなんだろうか?
言い換えれば、リモートリポジトリなるものの正体は単に誰かのローカルリポジトリだろうか?
954sage (ワッチョイ 8a84-4KSb [115.176.139.111])
垢版 |
2020/06/01(月) 22:04:07.44ID:cdzKAQgn0
図の奴はmasterもmy-local-branchもローカルリポジトリのローカルブランチ

ローカルに作成してどこへも push してないローカルリポジトリには、リモート追跡ブランチは存在しない

ローカルリポジトリからcloneすることは可能で、次々と拡散的にcloneできる

しかし、一般的には、cloneやpush/pullだけする上流のリポジトリは、--bare オプションを付けて作成されていて、ワーキングツリーが存在せず、checkout とかできない

さらに、github みたいなサービス上に存在するリポジトリの実体はもっと違うものであってもいい
2020/06/02(火) 02:44:05.47ID:ehPtl50t0
Git v2.27.0
2020/06/05(金) 18:12:43.55ID:6QvxjjST0
基本的なことでしたらすみません
マージしてpushしようとしたら、既にリモートのブランチが更新されてた場合ってどう対応してますか?
2020/06/05(金) 19:30:22.23ID:fqStb/MO0
>>956
fetchして、ブランチを全部表示すると、
自分のブランチとリモートブランチが枝分かれしてるから、
そのリモートブランチを持ってきて、自分のブランチにマージしてからコンフリクトを解消、改めてプッシュしたらいいのでは

それか、自分のブランチをリベースするか
(リモートブランチの先端に自分のブランチの変更をすべてチェリーピックするのと同等)
2020/06/05(金) 21:46:42.14ID:6QvxjjST0
>>957
自分も前者のやり方で対応してたのですが、
マージ先のブランチを更新する人が多く、pushするタイミングが難しくて質問してみました

リベースはやったことないので調べてみます
2020/06/05(金) 23:50:12.63ID:t5+w+CA20
pullしてそのままpushするだけでいいよ
履歴を綺麗に保ちたいならgit pull -rebase
時間のかかる大規模なマージのときは事前にコミュニケーションをとって不幸な競合をなるべく回避するように根回し
ひとつのブランチに対してコミットする人が多すぎるならブランチ運用の設計がまずいかもと相談する
2020/06/06(土) 00:10:37.80ID:u22pMI2j0
その状況だと、リベースとマージは同じだと思うよ。
pushするときに毎度マージが発生するのは仕方ないかもしれないけど、
それをマージしおわってpushしたらもう更新されてたっていうのなら、運用見直したほうがいいと思う。
調停する人置くとかしないとならんかな
2020/06/13(土) 02:42:46.35ID:riQ9cX92a
Masterって言葉は差別的らしい。

こういう流れを受けて、git 本体のMLでも議論されてる。
Rename offensive terminology (master)
https://public-inbox.org/git/bef39243-806f-7c4a-c3d1-f3500ec377be@iee.email/T/#t
というスレで議論されてる

うーん
962デフォルトの名無しさん (アウウィフ FF67-+Do1 [106.171.64.134])
垢版 |
2020/06/13(土) 09:41:05.39ID:rZLMUl8aF
主人も婦人も夫人も差別語だな
フェミ厨の出番だぞがんがれ
2020/06/13(土) 10:14:31.26ID:iZvX7GNda
Masterさんを迫害するな差別主義者どもめ
964デフォルトの名無しさん (ワッチョイ ffad-E0Y3 [61.26.120.165])
垢版 |
2020/06/13(土) 11:06:15.43ID:QZzer1mT0
メタリカのアルバム「Master Of Puppets」の邦題が「メタル・マスター」というのは、どう考えてもおかしい。
2020/06/13(土) 14:28:58.70ID:62Up8kzL0
BLMの飛び火だろうか
ATA規格のmaster vs slaveが避けられるのはわかる
masterのあるじとしての語義は宜しくないんだろう
でもmaster copyのような原本としての語義までケチをつけるのはどうなのか
Master Yodaのような達人や先生の語義は言わずもがな

>>962
mistressも同じだからフェミ云々はお門違いだろ
2020/06/15(月) 12:44:57.78ID:dV6GnPJJM
Masterを「原版」not主人の意味に定義すりゃ終わる話だな。
手間かけて修正するほどの話じゃない。

言い出しっぺはパッチ出したのかな?
2020/06/16(火) 06:59:51.19ID:fAeNikk60
SJWにはうんざりする
2020/06/18(木) 12:37:36.15ID:F3Ty4PRma
デフォルトのブランチ名の上書きのためのパッチがMLで議論されてる。
パッチの作者はMSの人だと思う

[PATCH 0/9] Allow overriding the default name of the default branch
https://public-inbox.org/git/xmqqd05xtp2g.fsf@gitster.c.googlers.com/T/#t
レス数が950を超えています。1000を超えると書き込みができなくなります。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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