[過去ログ] Git 18 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
460: (ワッチョイ 49b0-9bk+) 2022/08/15(月)22:34 ID:vxI8O7UY0(1) AAS
>>458
SCCSとかRCSとか。
461: (ブーイモ MMb6-Hx7L) 2022/08/15(月)23:18 ID:f21eh4iaM(1) AAS
Gitの開発経緯を考えるとリモートリポジトリの存在はむしろ超大前提で、ローカルだけで使えるのは副産物みたいなもんでしょ
まあリモートと言ってもGithubみたいな中央集権型ではなくて、無数のリモートリポジトリがあってパッチを送り合うような開発スタイルが本来のGitの姿
462: (ワッチョイ e1e4-Gxju) 2022/08/16(火)01:17 ID:yNxxslbt0(1) AAS
外部リンク[html]:ezoeryou.github.io
gitの10周年を記念したLinus Torvalsへのインタビューの翻訳

> しかし、BitKeeperがやってきてからというもの、ソース管理に対する見方が変わったね。
> BitKeeperは大抵のことを正しく行っていた。
> レポジトリのローカルコピーがあることと、分散マージはでかかった。
463: (ワッチョイ ed33-5Ix7) 2022/08/16(火)23:52 ID:zXGOFEoi0(1) AAS
>>448
gitに限らんけど、VCSって個人レベルでも機能追加とバグ修正並行して進める時は楽だ
464: (アウアウウー Saa5-oUG4) 2022/08/18(木)11:54 ID:p/limWqpa(1) AAS
gitとgithubの区別がついてないんだろ
465: (ワッチョイ 1f5f-SiT/) 2022/08/25(木)00:47 ID:x22ro4Sl0(1/2) AAS
初歩的な質問になるけれど…
異なるローカルブランチ「debug」と「genbug」が存在する。
両方のブランチに全く等しい「iam.txt」と「whoyou.txt」いうテキストファイルがあって、
どちらのテキストファイルも両ブランチの最新コミット内に存在するものとする。
「Iam.txt]の中身は"I am a dog."

「debug」ブランチで【rm whoyou.txt】と打って「whoyou.txt」を削除し、「Iam.txt」の中身を"I am a cat."に変更してステージングをしないまま、
【git checkout genbug】 と打って「genbug」ブランチに切り替え、ワークツリーを確認してみると、「Iam.txt」の中身は"I am a cat."に変更されているのに、
「whoyou.txt」は削除されていない(というより復活している)。
これはなぜなのだろうか?(whoyou.txtをgitリポジトリから消したいならrmコマンドではなくgit rm --cachedを使うべきなのはわかる)

いまいち、git checkoutをしたときのワークツリーの挙動が掴めない
466
(1): (ワッチョイ 9fe4-oOo3) 2022/08/25(木)02:38 ID:W0zamWK80(1/4) AAS
「git checkout ブランチ」するとき、

checkout前のブランチにおけるワークツリー上でのファイルの編集や削除は、
checkout前のブランチにコミットされているそのファイルとcheckout後のブランチにコミットされているそのファイルが等しい場合、
checkout後のブランチにそのまま引き継がれる

つまりIam.txtが変更されているのは正しいが、whoyou.txtが復活するのは何か操作を勘違いしていると思う

ちなみに、
checkout前のブランチとcheckout後のブランチにコミットされているファイルが等しく無い場合、
checkoutすることでcheckout後のブランチにコミットされているファイルへ置き換わるが、
checkout前のブランチにおいてワークツリー上でそのファイルを編集や削除していると、
checkoutが失敗する
467
(1): (ワッチョイ 9fe4-oOo3) 2022/08/25(木)02:40 ID:W0zamWK80(2/4) AAS
$ git status -sb
## debug
$ ls
iam.txt whoyou.txt
$ cat iam.txt
I am a dog.
$ echo "I am a cat." > iam.txt
$ rm whoyou.txt
$ git status -sb
## debug
M iam.txt
D whoyou.txt
$ ls
iam.txt
$ cat iam.txt
I am a cat.
$ git checkout genbug
M iam.txt
D whoyou.txt
Switched to branch 'genbug'
$ git status -sb
## genbug
M iam.txt
D whoyou.txt
$ ls
iam.txt
$ cat iam.txt
I am a cat.
468
(1): (ワッチョイ 1f5f-SiT/) 2022/08/25(木)10:19 ID:x22ro4Sl0(2/2) AAS
>>466-467
whoyou.txtが復活するのは勘違いしていたみたい すまん
「checkout前のブランチにおけるワークツリー上でのファイルの編集や削除は、
checkout前のブランチにコミットされているそのファイルとcheckout後のブランチにコミットされているそのファイルが等しい場合、
checkout後のブランチにそのまま引き継がれる」
こんな仕様があったのか。知らなかった。ありがとう。

ワークツリー上で行った操作をなかったことにしたい場合「git checkout .」で良いと思うんだけど
ワークツリー上で行ったgit操作履歴(というかローカルリポジトリへのコミット内容との差分)を確認する方法ってないのかな
469: (ワッチョイ 9fe4-hHkJ) 2022/08/25(木)11:07 ID:W0zamWK80(3/4) AAS
>>468
ワークツリーでの操作に関しては履歴は残らない
カレントブランチにコミット済みとワークツリーとの差分については、上でもやってるけどgit statusや、git diffでもできる

git diff # 差分の内容を表示
git diff --name-status # 差分があるファイル名とそのステータスを各1行で表示
git status # 差分があるファイル名を含めたワークツリーの状況を詳しめに表示
git status -s # 差分があるファイル名とそのステータスを各1行で表示
git status -sb # ブランチ名を表示した下にgit status -sと同じものを表示
470: (ワッチョイ 7f7c-tEjH) 2022/08/25(木)11:08 ID:bEU0NH1U0(1) AAS
git status -v
とかじゃダメなのか?
471: (ワッチョイ 9fe4-hHkJ) 2022/08/25(木)11:14 ID:W0zamWK80(4/4) AAS
git status -vは-v無しと同じかな?
毎回git statusやると表示がうっとおしいので、git status -sbの方をシェル関数でgstに定義して良く使ってる
git status -vはmergeやrebaseが失敗したときに見る
472
(1): (テテンテンテン MM4f-eIXn) 2022/08/26(金)18:45 ID:8mS1vdmvM(1) AAS
たかだかpushするだけなのに、ターミナルからやった方がエモいですか?
473: (アウアウウー Sa63-i/If) [age] 2022/08/26(金)19:07 ID:m09WXDX9a(1) AAS
エモいと言う言葉の意味がわからない
474: (ワッチョイ 7f47-A1og) 2022/08/26(金)19:30 ID:WwYTVpIB0(1) AAS
>>472=>>407
475: (ワッチョイ 82ad-p8/s) 2022/08/27(土)07:34 ID:cMY+Cqk70(1) AAS
エモいかどうかは知らんけど、ターミナルの方が便利
476: (テテンテンテン MM66-0gO+) 2022/08/30(火)12:28 ID:CdxrcFTpM(1) AAS
興味本位でインストールしたけど、そもそも履歴を管理しなきゃいけないようなものが、個人にはないこと気づいてほったらかしwww
477: (ワッチョイ 82ad-p8/s) 2022/08/30(火)23:04 ID:F66FctjD0(1) AAS
まあ、プログラマーくらいしか使わんかも
事務の人とか使ってるんかな?
478
(1): (ワッチョイ 4d33-yNcK) 2022/08/31(水)08:44 ID:hYROypry0(1/2) AAS
ファイル名で管理していて最新版がどれかわからんっていうネタはよく見るけど、最新版を追うためだけにVCSを導入するところは少ないでしょ
479: (ワッチョイ 4d10-nand) [age] 2022/08/31(水)08:46 ID:kba1lHfP0(1) AAS
Git v2.37.3
480: (テテンテンテン MM66-0gO+) 2022/08/31(水)12:34 ID:nUvaW37BM(1) AAS
>>478

最新はタイムスタンプ見れば一目瞭然だろ
パソコン初心者かよw
481
(1): (アウアウウー Sa85-Q92Q) 2022/08/31(水)15:08 ID:83s/Qhp/a(1) AAS
タイムスタンプω
パソコン初心者かよωωω=2πf
482
(1): (ワッチョイ c1e4-1iOq) 2022/08/31(水)15:34 ID:t/W0dlco0(1) AAS
gitがメジャーになったおかげで、ソースコードのタイムスタンプにゴチャゴチャ文句付けるオジサンを駆逐できて良かった
483: (ワッチョイ 4d33-yNcK) 2022/08/31(水)16:40 ID:hYROypry0(2/2) AAS
あと、扱うファイル形式的にも難しそう

>>482
どういうこと?昔はタイムスタンプで何か言ってくる人がいたの?
484: (ワッチョイ eedb-0gO+) 2022/09/01(木)01:20 ID:v92yFclD0(1) AAS
>>481
涙拭けよ
485: (ワッチョイ 5dc2-nKCz) 2022/09/01(木)02:02 ID:awsbjF/K0(1) AAS
タイムスタンプみたいな信用できないものに依存するなよ
486
(1): (ワッチョイ 5fc8-Iguz) 2022/09/03(土)12:08 ID:gEPymsC80(1/2) AAS
外部リンク:github.com
これをビルドするのにMSYS2を入れて、git clone git@github.com:witwall/mman-win32とやったら、git@github.com: Permission denied (publickey).になっちゃったんですけど、githubのアカウントがないとダメなんでしょうか?
487: (アウアウウー Sa8b-Ro21) 2022/09/03(土)12:50 ID:91ZlUxrsa(1) AAS
git clone github.com:witwall/mman-win32
488
(1): (ワッチョイ 0761-rTOP) 2022/09/03(土)12:56 ID:ZbfA6K7G0(1) AAS
>>486
SSH接続はアカウント作って鍵を登録する必要がある
git@github.com: → 外部リンク:github.com
に読み替えてhttpsでやればいい
489: (ワッチョイ 5fc8-Iguz) 2022/09/03(土)15:32 ID:gEPymsC80(2/2) AAS
>>488
ありがとう
1-
あと 513 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ

ぬこの手 ぬこTOP 0.028s