Git 16©2ch.net
レス数が1000を超えています。これ以上書き込みはできません。
GIT SVNでSVNのリポジトリのtagsにGITのtagを反映させるのはどうしたいいんでしょうか? GITだけ(SVNは入れてない)で開発していてtagをつけた後にリモートにdo commitしてもtrunkに入ります。 >>187
svnのtagは実質ブランチで、gitのtagと全然違うから無理。
git-svnでsvnからgitへの移行時もsvnのtagはbranch扱いだし、方法は無いと思う。 >>190
無理ですか SVN入れてる人に頼んでみます
なんでこんな分かりにくくて複雑で使いにくいものが流行ってるの?
もっとシンプルで簡単なものでいいじゃん。
プロジェクトメンバーのほとんどのヤツが良く理解してないのに
使わされるからめちゃくちゃになる・・・ めっちゃ便利なんだが??
分かってる人が分かってない人にちゃんと教えるべきでは?
御社の教育体制を見直すべきでは? >>192
どんなのが判りやすいと思う?
っていうかgitの前はどうしてたん? git の特徴は、直接リポジトリへ保存しないこと
一旦、自分のPC 内に保存して、そこで少し待つことができる。
その後しばらくしてから、リポジトリへ保存する 流行ったのはGithubの影響が大きいだろうね
実際、GoogleのPerforceとかFacebookのMercurialとかGitを否定して他のバージョン管理システム使ってるところも多いけど、一番数の多い中間層でブームになってこの状況なんだと思う gitが流行ったのは大手がこぞって使ってるからだよw 大手っていうのはプロジェクトの話ね
大手プロジェクトはだいたいgit 大手のオープンソースプロジェクトがGithubに移行したってこと bitbucket なら、5人以下のメンバーなら、プライベートでも無料 水銀はいいと思うんだけど、なかなか流行らなかったな mercurialが性に合うし hg-gitが優秀だから
裏側でmercurial使ってgithubに投げ込んでる 神様
汝へ
git rm --cached hoge.txt すると gitの管理下から外れ、ローカルのファイルは残るけど、pushするとリモートからは削除されちゃうのだけれども、削除されずにgit管理化から除外する方法
を教えてもらえますように。 git rm --cached hoge.txt すると gitの管理下から除外され、ローカルのファイルは削除されずに残るけど? >>208
神出現w
ローカルには残るけど、statusみると deleted: hoge.txt になっているので、pushするとリモート先からは削除されちゃうのです。 >削除されずにgit管理化から除外
どういう状態? >>210
環境依存する設定ファイルをgitで管理していたのだけれど、それをgitの管理から外すために、
・git rm --cached で除外(ファイルは削除いたくない)
・.gitignore に追加
・commitしてリモートへpush
・別環境でそれをpullすると、除外したファイルが消えてしまう
これを削除されないようにするのはどうすれば良いか、、というご相談です。 よかったか
値段がきついけど年に1冊ペースででるからなぁ うわぁ、いい本と聞いて見に行ったけど、あれ買う勇気も
読む勇気もないわ。 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
QHYQI M$とは大違いだな
>さらに、追加のセキュリティレベルとして、これらのリリースでは、問題のある.gitmodulesファイルを含むリポジトリへの
>pushesを拒否する。これは、次のことを意味する。
>ホスティングサイトが悪意のあるコンテンツの拡散を防ぐことで、古いクライアントを使っている顧客を保護します。 >>225
ここで述べられてるいくつかの脆弱性・修正のうち、
https://www.infoq.com/jp/news/2018/06/git-vulnerability-2.17
NTFSに関するものはこれだけでは?
> 修正された脆弱性の2つ目は、NTFSファイルシステムを使用するレポジトリに
> 特有の脆弱性であり、攻撃者がランダムなメモリ内容を読み取れるように
> NTFSパスの健全性チェックを欺くことができる。
つまり、あんたの引用したそれはNTFSとは関係ない
Linuxにも影響がある脆弱性 こういう記事を見てもMSを批判することは、かっこいいことみたいだね。
GitHubからGitLabへ移行しよう
ttps://qiita.com/flmil/items/89ca07fa976546365c49
> きっかけは、Microsoftは2018年6月4日(米国時間)に、
> GitHubを(約75億ドルで)買収すると発表したことだ。 放射脳みたいなものだね
昔ちょっと失敗したからっていつまでも原子力はダメだと言うのはばかばかしい
Microsoftも確かに悪い時期はあったけど今はユーザーや開発者にとってすごくいい会社だよ >>229
原子力は問題ですね、特にビジネスロジックの中にリスク管理が全く含まれないところが
原子力も保険に入る必要があるのですが、その保険を定義できない常況なのです >>229
原発でマスゴミの可笑しなところは
事故前(もんじゅとか美浜とかの時代)は少量漏れただけであれほど危ない危ないって騒いでたのに
事故が大きくなると何も言わなくなったこと
今も騒ぎ続けてないと可笑しいんだが
発狂して死んでもいいレベル どうです?原発問題とMSのgithub買収にはなんの関係もありませんが、
こうやって原発問題を批判すると、なんてことでしょう?MSがひどい会社に
見えてきませんか?これが話術というものです。 単なるアレルギーでgitlabに移行する奴は、ロクに技術選定出来ないだろうし、一緒に仕事したくない gitlabはオープンソースにする理由がなく
逆にソースを外部に預けることができない
政治的な理由がある場合に
社内サーバーにインストールして使うものだろう ローカルなリポジトリならなんでもいいからgitlab固有のメリットではないかな
gitlabは多機能だから他のサービスを乱立しなくても開発環境を作れるのが便利(jenkinsやめてgitlab-ciなど)
あとはブランチのアクセスコントロールは便利だと思う
本当はSVNみたいにサブディレクトリ単位でアクセスコントロールしたいけど… オンプレミスでやるにしてもGitBucketのローカルインストール版とか使った方がgit単独より便利だぜ >>242
今流行りの異世界転生物ラノベやな
に作者の
「あー、人生やり直してー、今の記憶を持ったまま、レベルMAXでやり直してー」
という願望からスタートする妄想やで 単にどこまで戻るかっていうより
失敗したとこまで戻ってやり直しても
それ以降の上手く行ってる部分はそのまま継続したいっていう
みんなが持ってる願望 Git で使っている、SHA-1だけど去年位からそろそろやばいっていう感じになってきて、
object_id っていう感じで切り出しを進めていたんだけど、次の2.18 でほぼ外出しできる模様。
次の次ぐらいで、SHA-1を置き換える動きが加速するかもね。 ハッシュアルゴリズムの脆弱性が出たとき既存レポジトリは
どうにかできるんだろうか?
githubの人に会ったときに聞いとけば良かった 指定したハッシュ値を持つオブジェクトって、もう簡単に作れるのかな? 2.18が出る直前になって、MLに "security: potential out-of-bound read at ewah_io.c |ewah_read_mmap|"
って、セキュリティバグほどではないけど、少しやばいのが見つかって、2.18のリリースが少し遅れている模様。 gitの開発グループではハッシュ値をobject_id に切り出しているんだけど、
それ以外にもMLに "Kill the_index part 1, expose it" っていうメールが
投げられて、index を隠蔽しようという動きも出てきている。 https://public-inbox.org/git/20180609205628.GB38834@genre.crustytoothpaste.net/T/#t
> To summarize my view, I think my ordered preference of hashes is
> BLAKE2b, SHA-256, and SHA3-256.
だって。SHA3-256.とかになるのかなー Introducing Git protocol version 2
Friday, May 18, 2018
https://opensource.googleblog.com/2018/05/introducing-git-protocol-version-2.html
git 2.18 から protocol v2 の機能が入ってきた模様。
1) Server-side filtering of references
2) Easy extensibility for new features like ref-in-want and fetching and pushing symrefs
3) Simplified client handling of the http transport githubを手に入れたMSがgitにまで手を入れてくるってことだな。
まずgithubを対応させる。そしてgitの拡張プラグインを作る
git本家に対応を迫る >>257
サーバーサイドで処理するgitコマンドが増えるって話だよ なにを? 俺はこれからのgitが
どうなるかって話をしただけだが?
今起こってる何かの話じゃなくて MSって以前からgit に積極的じゃん
MicrosoftがWindowsのコードリポジトリをGitに移動
https://www.infoq.com/jp/news/2017/07/microsoft-windows-git
Visual Studio のgit 対応とかもやってるし。
それから、↓のJohannes SchindelinもMSの人だよね。
https://git.github.io/rev_news/2018/05/16/edition-39/ gitがWindowsのAPIに対応しないでmsys依存で動いてた期間が長かったからねえ あとVSのgit対応はAndroidStudioに比べて酷く見劣りする >>266
今時のIDEなら、ソースの編集画面で、行が修正されてたかどうか表示があるよね?
AndroidStudio はこれがカレントブランチのHEADから修正されてるかどうかを表示してくれる
最新バージョンだと、この修正されてるかどうかの表示から、行の固まりを直接コミットできたりする
add -p がソースの編集画面でできるってことね
全体的に、ソースの編集が、ファイルを編集するのじゃなくて、コミットを編集するイメージでできちゃうのがいい VSは、ファイルシステム上のソースを編集するIDEに、レポジトリを操作する機能を追加しただけ
Android Studioはレポジトリ上のソースを直接編集するIDEになりつつある
前者が一周遅れているのを酷く見劣りすると表現した
後者はニッチなんかじゃなくて、これからIDEの基本的機能になるよ この辺どうでもいいって言ってる奴は、コミットする時statusやdiffで確認とかしてなそう
gitignoreも適当で何でもかんでもコミットに突っ込むタイプ >>275
>>267みたいな機能は、>>274みたいな奴には必要ない機能だからね
逆にコミットを丁寧に作りたい奴にはとても便利な機能 糞みたいなコミットでプルリク投げんなよ
買ってもらったGithubが泣いてるぞ GUIも
インターネットも
OSSも
Gitも
いつも手のひら返し >>288
この改善は、普通の規模のリポジトリにはほとんど影響無い
モジュール分けしてなくて馬鹿みたいにでかい原始的なWindowsのリポジトリをそのままGitで管理するようにしたら、log --graph の表示が遅すぎて使い物にならなくなって、しょうがないから git に対策入れたって話 >>292
よく読んでみ
WindowsじゃなくてLinuxを指標としてるから >>293
指標にしてるのはWindowsとLinuxカーネルのリポジトリ両方だろ
Linuxカーネルリポジトリで異様に改善されてるのは branch --contains だけ
これはそんな頻繁に使うもんでもないし、ブランチ全部ローカルにpullしてくる必要もないんで特に問題にならん
log --graph 6秒も許容範囲
それにくらべて、WindowsリポジトリはGVFS使ってチートしてるのに、log --graph が24秒もかかって、
これは使ってる人切れるだろ
今回の改善でこれがなんとか5秒になるわけだ >>294
自分に都合のいいコマンドだけ取り出すとは苦しいね
>指標にしてるのはWindowsとLinuxカーネルのリポジトリ両方だろ
Gitについては言及なしかい? >>295
Git のレポジトリが普通の規模のリポジトリ
コマンド1回あたり数百ミリ秒が数十ミリ秒になったって意味ない
だからほとんど影響無いって >>292で書いてる
俺にとって都合の悪いコマンドのことを書いてくれない? >>296
お前が許容できるかどうかじゃなくて純粋に数値を見なさい
6秒近くかかってたのが1秒もかからなくなることに価値を見いだせないならこの業界向いてないよw >>297-298
Linuxカーネルで6秒が1秒になったのなんて、Windowsリポジトリで24秒が5秒になったのに比べれば全然たいしたことないな
6秒を問題とするなら、Windowsリポジトリが5秒になったのなんて全然問題解決してないじゃん阿保かと git使っててコマンドライン操作にこだわるのはいいけど
コミットグラフ意識してないひとマジでちゃんと勉強してほしい >>300
ちゃんとコマンドラインにこだわってる人は、
log --graph --branches --remotes --pretty=format:〜
とかを使ってコミットグラフ表示を見てると思うけどね >>299
阿呆はお前やろwww
悔しかったらお前もGitのパフォーマンス改善してみれば? >>299
これをたいしことないと思えるとはすごいな
仕事でもいまだにXPのRAM2GBとか使ってそう >>305
巨大なレポジトリで頻繁に log --graph 見るようなときはローカルブランチで作業中とかなので、コミット範囲指定すれば一瞬で結果返ってくるし特に気にならない
いま試しにlinuxカーネルレポジトリクローンしてみたけど、master上だと確かに数秒かかるけど、ローカルブランチからならコミット範囲指定して一瞬だわ ストップウォッチで6秒を誤差1秒以内で押せる人だけが、
速くなったすげーすげーと喜びなさい pullするときにガンガンマージコミット作る人とかいるやん?
ちゃんと設定しといてほしい >>309
git config --global --add merge.ff false
git config --global --add pull.ff only addやcommitする際に特定の文字列が含まれているフォルダ以下を除外する方法を教えてください
datasets-XX、datasets-YYのようなフォルダを除外したいです .gitignoreに*datasets*と書いたんですけどadd *とやると無視してくれませんでした >>311
この設定が嫌って、、
gitをSVNみたいに使ってるところとか?
こわい >>314
すでにコミットされてるファイルが存在するフォルダは.gitignoreに追加しても無視できない
それをあえて無視したい場合には以下のどっちかを使うんだけど
git update-index --assume-unchanged
git update-index --skip-worktree
どっちを使うべきかは git update-index でググってみて >>318
そんなこと言ってるやつがいたら、そいつはプロじゃない
理由が上から目線で馬鹿はミスするから使うなだったら
完全にアウト。自分(ミスした本人)が理解してない証拠 おれも普段はfetchとmerge使って
pullはffが確定してる特定条件でしか使わんなあ fetchとmergeで済むならpullでいいだろw 例えばmvはcpとrm使ってやれるけど、mv使うでしょ?
それと同じだよ。楽な方使え
それにgitのよくある使い方は、pullしたブランチにコミットを追加するのではなく
新たにそこからブランチを切って作業する。
そしてpullしたブランチっていうのは通常他人の作業ブランチ。
だから他人がコミットを追加する。
つまり何が言いたいかというと
1. pullしたブランチは、他人の手によって成長する
2. 自分はそのブランチにコミットを追加しない
ということなんだから、ffは高い確率で確定している
多くの場合はgit pullでOK(--ff-onlyつけときゃffできないときエラーになる)
fetchしてmergeは、cpしてrmするのと同じで、無駄な作業をやってるだけ
そういうのは丁寧な作業でもなんでもないから merge するときだけ fetch するわけじゃなくて、上流の状態を確認するために fetch は頻繁にやってるのよね
だから merge するときも、まず fetch してブランチの確認してから、問題なければ merge する手順でやる
あと >>322 は、今の一般的な git の使い方とは思えない
他人の作業ブランチをpullするとか自分のとこじゃかなりレアケースで、mergeするのはmasterなりdevelopとかの上流のブランチなことがほとんどだよ mergeするのは
自分の作った自分だけがコミットするフィーチャーブランチを
他の人とも共有して使うブランチにマージする時、
っていうのが多いよね
フィーチャーブランチを作ったのがだいぶ前でも
コンフリクトがなさそうなときは
masterブランチのヘッドにリセットハードしてからフィーチャーブランチをマージ、
コンフリクトしまくる場合はいったんmasterブランチをフィーチャーブランチにマージしてコンフリクトを解決してからmasterブランチにマージ、
時間あるときはリベース
そんな感じじゃないの >>324
だいたいそんな感じだけど、masterのヘッドにリセットハードってチェックアウトじゃダメなの? >>325
実は>>324に書いてる方法はあまりやらず、本当はpullしない派なので、、
異端なのかな、、
fetchしまくって常にmasterブランチの動向を監視、
他の人の作業でmasterブランチが成長してきてmergeできなさそうになってきたら
再度フィーチャーブランチを作って
元のフィーチャーブランチの作業をすべてチェリーピック、
フィーチャーブランチの作業が終わればmasterブランチの先端に合わせて(リセットハードして)フィーチャーブランチをmerge
こんな感じ >>323
> 他人の作業ブランチをpullするとか自分のとこじゃかなりレアケースで、mergeするのはmasterなりdevelopとかの上流のブランチなことがほとんどだよ
master、developも含めて、他人だよ。
masterやdevelopに自分が直接コミットすることはない。
このブランチからはgit pullするだけ。
そしてそれは常にffになる。ffにならないのは異常事態
誰かがとんでもないミスをしたということ
ffになったかどうかはgit pullのログ見てればわかることだし
--ff-onlyつけてれば、ff以外は弾かれる
つまりは、あんたは
fetchして問題ないか"毎回"確認してmergeしてる
俺はgit pullして"問題があったときだけ"確認してる 俺の場合
> fetchしまくって常にmasterブランチの動向を監視、
git pullしまくって常にリモートのmasterに
ローカルのmasterを追尾
masterが変更されるたびに、
フィーチャーブランチをgit rebase master
マージできる場合は、git rebase masterは成功する
コンフリクトが起きればマージできないということ
「mergeできなさそう」なんて曖昧な判断はいらない
コンフリクトを解決すれば、当然またマージできるようになる
ただしプルリク出したあとは、他の誰かがレビューしたってことなので
その作業が無駄(分かりづらく)にならないようにmasterをマージする方法に切り替える
(masterをマージすることで逆に分かりづらくなる場合はgit rebase masterする場合もある) >>326に書いてある
> 再度フィーチャーブランチを作って
> 元のフィーチャーブランチの作業をすべてチェリーピック、
git rebase master一発で↑これ相当のことをやってることになる
>>326はmergeできなさそうになったらやると言ってるが、
俺はmasterが変更になるたびにやってる。
git rebase masterならそれが可能。しかも簡単。 >>327
別にpullが失敗するかどうかだけを確認してるわけじゃない
masterからブランチ切るときとか、masterにマージするときには、origin/masterの状況がどうなってるか確認したいからまず fetch する >>328
fetch はフィーチャーブランチがカレントブランチのままできる
いちいち master を checkout して pull しまくるとかマゾなの? あ、なんだ。masterをfetchしまくってるマゾだったかw ごめん。masterをfetchしてmergeしまくってるマゾだったねw
絶対ffは成功するのに、わざわざfetchして確認(何を?w)してから
mergeしてご苦労さんw fetchはカレントブランチに関係無く、すべての上流ブランチ取り込めるの知らないの? >>335
え? まさか、masterにcheckoutする作業、
つまりgit checkout masterって叩くのが面倒って
だけの話をしてるの?
え?まじでコマンド操作が苦手なだけってオチ? カレントブランチ変更はいろいろ面倒だから頻繁にはやりたくないけど、
originの状態は常に把握しておきたいから fetch を使う
そして fetch 済みなら pull 使う必要もない
これだけのこと >>336
お前ほんとにgit 使ってプログラム書いてる?
コミットしてないファイルとか整理せずに checkout いきなりすんなよ あと自動ビルドとか文法チェックとかcheckout 契機にはじまってしまうからな
頻繁にはやりたくない >>337
うわwww
ローカルにリモートのブランチを持ってこないとか言い出した。
そうかお前、ローカルのmasterブランチないんだね。リモートのmasterしかないんだね。
すげー変な使い方w
>>338
コミットすりゃいいじゃん。
他にもstashすればいいし
何いってんの?gitの使い方知らないの? >>339
> あと自動ビルドとか文法チェックとかcheckout 契機にはじまってしまうからな
自分で間違った使い方した上に、
自分で自分の首を絞め、
そして自分に文句を言ってる図w checkout時に、自動ビルドや文法チェックなんて
する間抜けはまずいないから、ネットでググったら
すぐこいつ見つけられそうw >>340
>>337のどこにローカルにリモートブランチ持ってこないなんて書いてあるんだ?
必要なときにはローカルに反映させるが、それを頻繁にはやらない >>342
IDEが自動ビルドとか文法チェックやってる
checkout して内容変われば当然やり直す
IDEじゃなくてもバックグラウンドでそういう監視プロセス動かすことも多い >>340
リモート確認するためにstash やコミットするとか
やっぱりマゾか pull じゃなくて fetch しておくとどんな差分が落ちてきたか diff origin/master とかで見れるから便利だったりするお 自分の作ったフィーチャーブランチすら複数同時並行で作業が進むことだってよくあるんだから
いちいちローカルのmasterブランチの位置がリモートと比べてどうなってるかチェックしたってよくない? fetchに課金されるわけじゃないんだから好きにしたらいい ギットハブには来ない
投げっぱなしの外注先
branchもない
mergeできない gitを使うことが目的になってる人たちがいるからレスバトルで荒れるね でも残念ながらくだらないマウントの取り合いなんだよね >>356
おまえいつもくだらないマウント取られてるよなwアホなん? これまでひとりでプログラムかいてたのでバージョン管理ツールを使ったこと無く
チーム開発業務でgitを使うことになったのでいくつか質問させてください
ブランチ チェックアウト コミット プッシュ
の流れでやってくださいとはいわれたんですが
それぞれがリモートローカルどっちで何がおこるか正確にわかってなくて
万一社内のファイル破壊したら怖いので
対応するコマンドとリモートローカルどっちにどんな影響があるか知りたいんですが
gitの使い方を説明するブログってまずローカルにファイルを作ってプッシュするところからはじめてるものばかりなんですが
最初からリモートに社内のファイルがあってそれを更新する場合initは不要なのでしょうか
cloneはread onlyでbranchではなくリモート側に何の影響もないであってますか?
branchはローカルで行うものでリモートには影響はあたえませんか?
デバッグ等には設定ファイル等複数のファイルを更新するんですが
最終的にリモートに反映させるファイルを1つだけにすることって可能でしょうか
その場合どの段階でどうやってファイルを限定すればいいのでしょうか
あとBitBucketっていうアカウントを作るよう指示されたんですがGitとはどういう関係があるんでしょうか
リモートのおき場所を提供してるクラウドサービスぐらいの認識で
すでに社内ファイルがおかれてる場合はウェブ上の作業は必要なく
ローカルでgitコマンドを叩くだけで大丈夫でしょうか?
具体的にコマンド含めて教えていただけるとありがたいです
初歩的な質問ですいませんがよろしくお願いします >>359
プッシュさえしなければ何してもOK
プッシュする前に何をプッシュしようとしてるのか必ず確認すること branchやcheckoutを行っただけでは
リモート側にはそれを行ったことすら通知はされないってことで大丈夫でしょうか?
間違って(必要のないファイルまで)branchやcheckoutをしても
やり直したり取り消したりすることはできるということでしょうか? >>361
プッシュさえしなければ何してもOK
プッシュせずにいろいろ試してみて すばやい返答ありがとうございます
とりあえずコミットまですすめて
pushするときだけリーダーに確認とってみます リモートブランチとローカルブランチの使い分けについて教えてください。
よく推薦されているブランチとしてmaster、develop、feature、release、hotfixがありますが、これは全部リモートブランチに作るものなんでしょうか。
例えばf1という機能追加を行いたい場合、どのようなフローになるのが適切でしょうか。
・masterからdevelop/d1をブランチ
・develop/d1からfeature/f1をブランチ
・改修
・feature/f1をdevelop/d1にマージ
・develop/d1からrelease/r1をブランチ
・リリース作業
・release/r1をmasterにマージ
上記で問題ない場合、普通に使う分にはローカルブランチの出番がないように思えます。
そもそもfeatureブランチはローカルに作るものだったりするのでしょうか。
GitHubとかのWebサービスは使わずに自社内完結で開発者10人以下のプロジェクトです。 ローカルブランチなんて自分の作りたいように作ればいいよ
プッシュさえしなければ何してもOK >>365
featureやhotfixをリモートに作るかどうか、リモートにpushするかどうかは、ツールや運用依存だと思う
でも普通はdevelopやmasterにマージする前にレビューするだろうから、pushすると思うけど いまプロジェクトのドキュメントファイルがあって
それをbitbucketでかきかえてほしいって指示されてるんですけど
具体的になにをすればいいんでしょうか
gitの仕組みはウェブ上でいろいろよんではみたんですが
ファイル単位で具体的にどこにどういうことがおこるのかが分からなくて怖くて何もできてない
いまアカウント登録してリモートリポジトリがみえてる状態なんですが
bitbucket上の画面で何をすればいいのでしょう
コマンドでcloneをたたいてローカルにファイルをコピーするのはブランチとは違うのでしょうか?
まる2日かかってドキュメントを編集するところにすらたどり着けなくて情けなすぎる… 何をどうすればいいのかわからないとリーダーに相談したら? 結局まる1日かけて何ひとつできなかった
Git難しすぎる
世の中のエンジニアさんってみんなこんな難しいもの独学で自然に覚えられるものなのか
自信なくなってきた github使い方知りたいのに書籍はどれもSourceTreeの解説ばかり >>367
やっぱそうですよね
ちなみにローカルfeatureに何度かコミットしたブランチをリモートにマージした場合でも最終コミットの情報だけがマージされると思ってて良いのでしょうか
>>371
自分は試せる環境もないのにsvnからgitの移行提案書書かされてます
マージとリベースとかやってみないとイメージ湧かなくてほんと困る、、、 >>373
git試す環境とかVMのLinuxにGitbucketインストールしてみるなりGitHubの無料アカウント作ってみるなりすればいいだけだろw >>374
まずクラウドサービス使うのと仮想立てるの禁止だし
アプリインストールも申請しないとダメだしでかなり厳しい
ライセンスでいろいろ問題があってから申請もまともに通らないです
こんな会社うちぐらい?
普通は気軽にクラウドや仮想使えてるのかな? 何なのこの糞ツールほんと
ブランチはローカルでやるものだと思ってたらウェブでやるのかよ…
clone fetech branch checkout の違いもまったくわからないし
朝9時から17時間かかってようやくコミットまでいけてプッシュできたと思ったら
プルリクエスト作れとか意味わからん指示きた
プッシュならわかるけどなんでプルするのに承認がいるんだ? >>377
gitの話題ではないのでこちらへどうぞ
OSSホスティング総合【SourceForge,GitHub,etc..】
http://mevius.5ch.net/test/read.cgi/tech/1384821518/ >>378
すまんまじで煽りなのかまじなのか分からんのだが
gitの話題じゃないってどういうことなん?
理解できてないから検討はずれなのかもしれんけど自分はgitの話してるつもりなんだが
gitコマンドってこのスレでいうgitとは違うのか?
結局分かってるやつにわからんやつの何がわからんか理解できない典型的な糞ツールだな
ウェブ調べてもどや顔で説明かいてるやつは分かってるやつしか分からない説明ばかり
クローン ブランチ フェッチ チェックアウト プル マージ とか全部同じような説明してるし
リモートローカルどっちのデータが変わるのかタグだけがかわるのか何もかわらないのか説明してるのがほとんどない
addも最初意味わからなかったし直感的に理解できんのコミットぐらいしかないわ プルリクエストはgitの機能ではない
ホスティングサービスが独自に提供してる機能 ああ そういなのか
プルリクエストしたら1箇所なおしてっていわれたから直したんだが
git log みるといままでの人もほとんど1人1回のコミットしかしてなかったし
コミット履歴が多いのださいからと思って1つ前のコミットのリセットをして新しくコミットしなおしたんだよ
そしたらプッシュできなくなったんだよ
プッシュしたコミット履歴がないと別のブランチにみえるからコンフリクトってのをおこしたのか?
何となくやっちゃだめなことやったってのは分かったわけ
だからプッシュした状態のデータに戻してからもう1段階修正してこみっとすればいいんだと思うんだけど
プッシュしたデータをローカルに復元するのがどうやってもできないんだよ
クローン ブランチ フェッチ チェックアウト プル マージ どれ使えばいいんだよ
まじで睡眠時間削ってもう数十歳とよみまくってるけどまったく理解できない プログラマがバカでもなんとかなった(ように見えた)のはgit登場より前まで。git以後はバカにはプログラマは務まらなくなったし、SEより高いカネ積んでも雇えなくなってきてる。 睡眠時間削って数十歳読んでも分からんのは逆にすごい >>376
クラウドはともかくソフトウェア開発でVM禁止とか信じがたいな
仕事にならんやんか 最近VirtualBOXが禁止になったな。
標準インストールされるUSB周りのプラグインが有償ものだったらしい。
VMware workstation playerも有償だから、貧乏プロジェクトはこまって
10年くらい前の廃棄予定PCかき集めてたな。 Windowsの標準機能のHyper-Vでええやん dockerでいいやんと思ったが、Windows環境だとHyper-V必須か cloud9でいいやん
もうPCに仮想環境とかいらん
ハワイで遊びながら夜にホテルのベランダで開発したい >>393
githubの使い方分からんと言ってる奴がなに言ってんだw
>>372 >>386
つまりおまえはプログラマー諦めたんかw だれかまじでたのむ
1時間1万はらうからリモートのファイル更新する方法おしえちくり
つーかgitスレの住人つめたすぎね?
他のスレはきいたらなんだかんだで教えてくれんのに >>396
あとさ、とりあえず自分のドロップボックス内とかさ、もしくはgithubとかにリポジトリ作ってオレオレgitで試せば良いんじゃない? clone、pull、push 試すだけならネットワークすらいらんで
ローカルディレクトリ指定で clone すればいい >>396
コミットしてプッシュするだけなのにそれができない意味が分からないんだよ ちがうの
>>383をよんで
異常事態なの
1回目にpushしたときのコミットをresetしちゃったん
だから1回ローカルをリモートの状態に戻したいんだけど戻せない
fetchしたらdivergeしてるっていわれるの
もうなにがなんだか分からない >>401
最初から全部やり直せ
中途半端に push したのはご主人様に言えば掃除してくれる >>402
え cloneでいいの?
ちょっと試してみる git分からん奴が何でgithub使ってんだ・・・OSDNでも使ってろよ git push -f すればいい。
自分が管理するブランチの歴史を書き換えて
強制pushするのはよくやること >>401
intellijとかのGUIクライアント使ったほうがいいんじゃない?
履歴とか差分とか見ながらのほうが把握しやすいと思う。checkout & revertも簡単だし。 >>377
> clone fetech branch checkout の違いもまったくわからないし この場合はcloneし直してpushしてあるはずの自分のブランチをpullするのがいいだろ cloneしたら書き換えた内容全部きえちゃった;;
泣きそう;;
設定ファイルめっちゃっかきかえたのが全部なくなった…
でもとりあえずpushはできたのでありがとうございます ていうかcloneするときブランチ名一文字もいれてないのに
どのブランチをコピーするかってどうやってきまってるの?
リモートにはマスターと自分がブランチさせた2つがあるんだけど
それぞれをクローンしたいときってどうやって指定するの? git addしたのしか書き換わらないと思ってた…
ソースと設定ファイルがあって
設定ファイルは各自の個別設定なのでpushしちゃだめなやつだから
かきかえたソースだけaddしたのに設定ファイルまで上書きされちゃった
addってgitが管理するファイルを選ぶコマンドじゃないの?
糞ブログども嘘ばっかり書きやがる ソースと設定ファイルについて詳しく説明してくれ
何を言いたいのか意味がわからん あと、糞ブログがいやなら、ほぼ公式マニュアルである git-scm.com のページだけ参考にすればいい
git clone について調べたいなら git clone site:git-scm.com だ 使うファイルに設定ファイルAとドキュメントBがあって
Aは最初は汎用設定だけかかれてて自分の環境にあわせていろいろ追加して使うファイルで
リモートには変更しちゃだめなやつ
Bは今回かきかえてアップデートするファイル
Aをがんばってかきかえて動く環境つくってBをかきかえてBだけをプッシュしたんだけど
みんながクローンしなおせっていうからしなおしたらAももどっちゃった
もどして;; 糞ツールのせい
糞ブログのせい
みんなの言うとおりにしたら失敗した
ぜーんぶ他人のせい そもそもcloneって新しくローカルコピー作るだろ?
その前の(pushしようとした)作業コピーはどこやったの。 よくわからない
とりあえずもう終わったのでもういいです
また月曜日に設定しなおさなきゃいけないけど… gitにはそういう設定ファイルを安全に維持する方法があるけど
おまえは馬鹿で何が起こったか理解しようとしないから
いつか大失敗してクビになってください >>401でローカルをリモートの状態に戻したいって言うからcloneしろって教えたのに、なんでリモートの状態に戻ったことに文句付けてんだよw まあ、いい経験じゃね?
・『Pro Git』読む
・プロジェクトリーダーとかに聞く
・Gitクライアント使う
とかすれば?嘆いてるだけじゃ何も生まんよ >>419
だからintellij使えって。
お前にゃcuiは早過ぎる。 むしろdiffとpatchからやるべきでは
で、cvs, subversion, darcs, mercurial, fossile, veracityと進む ブランチにマスターの変更を取り込むにはリベース?チェリーピック?どうすればいいの リベースはやってはいけないものと教え込まれて育ってきたけど正しい? gitのコマンドは必要だから搭載されている
やってはいけないものなどない。
会社のレベルが低いということだな 何もかもなかったことにするのがリベースだよね?
そんなことが許されるの? >>432
なんのために間違った作業を残しておくの?
何に使うのかを言って >>433
「間違った作業」という判断が間違いだったときのため。 >>434
なら「間違った作業」のブランチを別に作ればいいだけ 何も無かったことにするためにリベースを使うのは
ちょっと特殊な用途だと思う >>432
リベースはフィーチャーブランチを作り直すために使うんじゃないの
何もなかったことにするというのはだいぶ違うと思う >>437
リセットハードしても何もなかったことにはならんでしょ
リセットハードする前にそこでブランチ作ったり
単にハッシュ覚えとくだけでもガベージコレクション前なら戻れるし
ある時点にリセットするっていう
そのままの意味でいけますやん ここでなかった事にすると言ってるのは、コミットの履歴上でのことでしょう 間違えてパスワード入ったままpushして
元に戻したいっていうのが一番多い案件 そんなわけないだろ
小さくコミットをして言って、途中で不要なコミットを
なくしてレビューしやすくするのがrebaseの目的
このコミットでコードを修正しました。
その修正の際に入れたタイポを直したのが
このコミットです(ドヤー)とか見せられても
誰も嬉しくないんやで >>442
これあるわー
フィーチャーブランチの中で作ったデグレを修正したコミット履歴とかいらんねん リベースしたら分岐元のバージョンが新しくなるだけじゃなくて
過去のコミック履歴も消えるの?
消えた履歴はもうたどれない? リベースする前のフィーチャーブランチの先端のハッシュIDが残ってたらそこでブランチ作ったりできるしなんとかなるよ 一応見といて
2018年6月請求の不使用取消審判について
2001年以降、我々のオープンソース商標に関しては特に大きな変化はありませんでしたが、
先月18日に一部の指定商品に対して不使用取消審判が請求されました。
請求人は「[https://opensauce.co/株式会社OPENSAUCE]」(金沢市)であり、
料理レシピを共有するプラットフォーム提供などを行う事業を計画している会社のようです。
https://mag.osdn.jp/18/07/30/220000 >>450
別に30年分の履歴を全部覚えておく必要もないだろ 設定ファイルの中にパスワードが入っていてどうしても別ファイルに分離できない
なにかやり方が無いか探したら、フィルタを作る方法があるようだな
http://blog.davydovanton.com/2015/11/14/ignore-file-lines-in-git/ >>456
最後の一文
公式リリースノートでGit 2.18の全機能一覧を読んでください。 バージョン管理ツール「Git」は一体どういうものなのか?
https://gigazine.net/news/20180904-git-version-control-system/
なんでgigazineがgitなんか解説してんの?
ライトなIT系ニュースサイトのお前には力不足だろうに 訂正
どうでもいいコンピュータ関連の話題紹介サイトのお前には力不足だろうに 違うな
ナードが好きそうな話題紹介サイトのお前には力不足だろうに GIGAZINE以上の内容が書けて拡散できるお前がやれば? >>461
あの程度のgitの説明なら、誰でもかけるだろうなw
でもそんなのすでにたくさんあるからやる必要がない。 あ、ファイルダウンロード中だったw
しばらくしてからIPアドレス変更するよ 結局IPアドレス変更するの忘れた。
日付が変わると同時に変えるとしよう 自分より立場が上で途中から加わった人が”タイムスタンプが変わるのとファイルがロックできないとから使い物” <意訳>にならん。
GITからZIP管理にしようと言い出した。
どう説得したらいい? マージ最強
ロックはクソ
タイムスタンプはビルドシステムがファイルの変更に反応するのに必要 Git LFSのロックとか
ロックのあるSVNにしようじゃなくてzipかよ ホントにzip強制されるようなら転職不可避だな。
git以外でもろくでもない判断が下されるに違いない。 これやってトラブっても何も責任もてんがw
1. gitのメリットを言ってもらう
zipのメリットなら色々屁理屈言ってきそうなので
gitのメリットを言えないなら、それは無知であることを自覚させられる
2. gitのメリットの話と、人間の問題を切り分けて考えてもらう
gitのメリットがわからないのか、わかった上でそれを使う人間の技術力が低いから使えない
という話なのか、どちらかなのかはっきりさせる 3. 学習コストが云々言われたら、学習による開発効率向上による
コスト削減と比較してみたのかを聞いてみる。
コストコスト言うやつほど、"比較"をしてない。
コストは何をしてもかかるものなので、コストがかかる
っていうのは何の意味も持たない タイムスタンプは記録されているものを反映させればいいだけだから
zipなんかよりも完璧に管理できますって言えるな。
もちろん開発中はタイムスタンプを更新しないと不具合が発生するので
絶対にやらないこと。あくまで馬鹿向けのためのできると示すため 上司の上司に言って無能上司を更迭するしかない。
あるいは逃げるか。 どうぞどうぞでいいんじゃね?
メリットを享受する人間に実行してもらうのが吉。
俺はそれでもgitを使い続けるし、zipにしろって言われても無視する。(誰も困らないし。 >>481
要するに最終的にお前が会社を辞めるという結論でしょ? 468です。
みんなありがとう
その人には、自分の修正だけやってもらってGITでの管理は私がマージ&コミットすることになりました。本人は、VSS(ソースセーフ)にしたいらしい。 【このハゲ―、麦だろ】 TPPに米と毛が駆逐される <農林10号> 頭髪すら枯らせるモンサント
http://rosie.5ch.net/test/read.cgi/liveplus/1536286354/l50
ピザデブ、ピザハゲ、ピザ糖尿。 VSSか
Window10ではもう動かないんじゃなかったっけ http://medaka.5ch.net/test/read.cgi/prog/1531667040/
の39〜48あたり
VSSは遅いだけではなく破損するって時点で致命的
共有フォルダに毛が生えた程度のものと考えると良い
マージはあるみたいだが基本的に結果を確かめられないので博打になる ブランチあったらどうやってロックするんだ?
プログラミングではしばしば複数のファイルを編集する必要があるが
どのファイルを編集するのか全て作業前に把握して
全部ロック掛けるってのもむり
あ、このファイルも編集しないと
って思ったらもうロックされてたり
互いに同じファイルをロックしようとして作業が止まったらどうするんだ
相手が作業終わるまでサボる?
何ロックしてやがんだ!と文句を言いに行く?
ロックしたまま忘れたらどうする?
ロック無理やり解除して横取り? >>487
そもそも、ロックなどされない!
各人はリポジトリから、最新のファイルをダウンロードして、
自分の(ローカル)PC 内で、更新・保存するだけ
つまり、Git は、他のVSS と違って、一旦ローカルPC に、更新・保存しておく段階がある。
そして、切りの良い所で、それをリポジトリにアップロードする
そのアップロードは他人にも報告されるから、
アップロードされた最新のファイルを、ダウンロードし直せばよい VCS = Version Control System
VSS = Microsoft Visual SourceSafe Girのマージでロジックが変わってしまうパターンってなんかある?
VSSロックは官公庁の開発では割とアリだなと思ったよ >>492
あるよ。(だからマージされた後自動テストを走らせる)
例えば一つのブランチで、ファイルの上の方に
#define VALUE 100 という定義を追加する。
ずっと下の方で、VALUEを参照したコードを書く。
もちろんテストは通る
別のブランチで、ファイルの中頃に
#define VALUE 200 という定義を追加
そのすぐ下で、VALUEを参照したコードを書く
もちろんこれもテストは通る
この2つをマージすると
#define VALUE 100
#define VALUE 200
VALUE=200を期待しているコード
VALUE=100を期待しているコード
となる。
gitに限らずどんなものでもブランチ単体では問題ないし、
コンフリクトも起こさずにマージできるが、
テストに失敗してしまうことはある >>490
むしろロックでの開発が分からんって話なんだけど
テキストファイルを一回の作業で一個だけ編集する
ブランチは無し
って状況でも無けりゃ使えなくね
さらに
VSSは複数のファイルを同時にコミットみたいな機能が無いみたいに書いてあったけどまじ? >>495
人間から見た操作的には同時コミット(チェクイン)可能ではあるが、履歴は基本的にRCS/CVS的なファイル単位の差分管理のみ。 Now available: Git for Windows 2.19, including experimental built-ins for rebase and stash that make them both much, much faster! https://gitforwindows.org/ 共有用なんかで作るベアレポジトリって、中身はHEADとかbranch/とかばかりで、実際に管理しているファイルは入ってませんよね
git ls-filesしても、なにも出てきません
そのベアレポジトリで管理されてるファイルの一覧を見る方法を教えてください
cloneすると、管理しているファイルもclone先に作成出てきますが、そうて'はなく、コマンド等で確認したいです Git 2.14.5, 2.15.3, 2.16.5, 2.17.2, 2.18.1, and 2.19.1 CVSとかsubversionでブランチを作るのはgitに比べると遅いといわれる理由は何なんや
gitではブランチはコミットオブジェクトを指すだけの参照だから、ブランチを作成するには、コミットオブジェクトを書き込むだけで済むから高速というのはわかる
一方CVSやsubversionではブランチをどうやって作ってるんや(´・ω・`) CVSは知らんがsubversionのブランチってほぼファイルコピーみたいなもんだからじゃない? svnはブランチ作るだけなら言うほど遅くないと思うがな。
ブランチ作った時点では差分がないからファイル内容はコピーされないで参照ができるだけだよ。
それでもgitよりやることは多いだろうけど、ブランチ作るのもリモートリポジトリ操作だからってのが一番大きいんじゃないかな。
CVSはRCSというdiffファイルで世代管理するツールがベースになっている。
リポジトリもRCSそのままのdiffファイルに毛が生えたようなテキストファイルの束だから遅いと聞けばそりゃまあそうだろうと思う。
当時のPC環境が今より数段遅かったというのもあるがローカルで使っても遅かった。 >>507
subversionはブランチはリモートに作るもの
ローカルだけでは作れないので遅いし
ネットワークがつながってないと使えない ブランチ作成でファイルを全部コピーするのはVSSぐらいだろ? GitHubを使ってみたくてGit勉強してるんだけど
GitがGUIで使えるような奴はなんか欠点あるの?Windows環境とかでもCLIでやってる人が多いのはなぜ? 日常的によく使う操作はIDE使った方が早いけど複雑な処理になったらCUI使わないとできなかったりするね
要は使い分け >>520
逆じゃないかな。
日常的にやってる操作はCUIの方が楽でしょ。
変遷をグラフィカルに表示して一望したかったりする時にGUIが大いに役立つ。 要は使い分けだよ
CUIが必要なければ使わなくていいし
とりあえずはCUIで勉強するのがおすすめ >>521
ほんそれ
CUIで充分
>変遷をグラフィカルに表示して一望したかったり
githubのnetworkで観てるわ >>521
グラフを見るなら
git log --oneline --decorate --graph --branches --tags --remotes
https://qiita.com/imudak/items/4a8549b46fe2e509a08c どうしてもキャラクタ表示じゃなきゃやだっていうこだわりが無けりゃ gitk --all& 一択だね。 初心者です。
長くなったソースファイル(s1.cpp)があり、
このコードの一部を、新規作成したファイル(s2.cpp)に分割したいと考えています。
この時、どのような方法で移行するのがGit的には望ましいのでしょうか。
とりあえず今までは、まず単純にコピーしてコミット、
両方のファイルから不要部分を削除(+微修正)してコミット、
といった感じで2回コミットしていました。
なお、開発環境はWindows10 Pro、言語はC++、UIはGit Bash、
ホスティングサービスはGitHubを想定しています。 git的にはどうでもいいと思うけど、ファイルコピーしたという事実をわざわざ履歴に残したいの?意味なくない? >>528
コピーした事実というか、s2.cppからs1時代の履歴を追えるようにする
というのが一番の目的です
現状でも、分割したタイミングで分割したよとメッセージを残しておけば
人間なら内容を理解できるので、そちらを見てくれるとは思います
システム的なルールに限らず、定番のやり方だとか
別ツールで利用するときに相性の良い方法などあるのかな?
と思った次第 >>527
一回で充分
人間は
AをBにcopy
Aを編集
Bを編集
のつもりでも
gitは
AをBにrename
Aを新規作成
Bを編集
だったりする
(必ずこうなる訳ではない)
良きに計らえ >>530
ありがとう
リネーム扱いになるってことは、基本的にはちゃんと追ってくれるってことでいいのかな いまの操作でほぼ確実にログやblameが追跡できているのであれば
多分ほぼベストな方法なんじゃないかと思う 各commitの変更を見たりcheckoutするときとかはSourceTreeの方が便利だなぁと感じる
rebase -iとかfilter-branchを使う時はCLIでやってる 次に出る、2.20では
* "git rebase" and "git rebase -i" have been reimplemented in C.
なんだな。いろいろバグが出そう。 privateなリポジトリに誰がcloneしたか見る機能あります? 孫cloneできるのに意味あるのかな
GitHubやGitLabの監査ログには書かれると思う 個人の開発でパソコン二台で運営してる時、それぞれのパソコンでuser.nameとuser.emailは使い分けるべき? 何を運営してるか知らないけど、2台とも同じユーザが使うならuser.nameとuser.emailも同じでいいでしょ もしかすると、特定の用途のときに優位性を発揮するとかはあるのかもしれないが
すぐには思いつかないなあ .gitattributesで自前のxfuncnameを使おうと思ってるんだけど、xfuncnameの方をリポジトリに設定することって出来ないかな? Git Rev News: Edition 45
https://git.github.io/rev_news/2018/11/21/edition-45/
を読んでたんだけど、開発者紹介で
Developer Spotlight: Elijah Newren
> I’m a husband to the most amazing woman in the world, and a father
> to one son and six daughters. My wife is expecting again,
すげーw。嫁が8人目を妊娠中とかどんだけw
ユタ大学ってことはモルモンなのかな。 >>547
嫁さん大好きなんだろうな。なんかほっこりする jira使ってるところはbitbucket使うし問題ない gitはバージョンアップしなくても使えるからバージョンアップしない 次の次( git 2.22 ? ) あたりで、 git switch ってコマンドができるみたいだな。
git checkout とは似て非なるコマンドのようだ。 マジで?
tortoise gitはswitchって文言をcheckoutのために使ってるからややこしいね stashとcheckoutを合わせたようなニュアンスを感じるが、どんなもん? 最新リリースのバグ対策を進めながら、そのうちいくつかのバグ修正が旧リリースにも必要なことが判明したときとか
同僚が開発してた機能にDBの定義変更があって、自分の担当する機能にも同じ変更の影響があることに後から気付いてSQL周りを貰いたくなったときとか >>567
よそのブランチから良さげな修正だけを持ってくる時に使うくらいかな >>567
きれいなコミット履歴を作りたいときに多用するよ
コミットを終えた汚い(他の人がレビューしづらい、自分で振り返りづらい)ブランチの先端で
別の名前のブランチを作っておき、
やり直したいところで新たなブランチを作り、
そこに汚いブランチから、コミットの順序を入れ替えたり一部のみ取り込んだりするときにチェリーピックを使うよ そのブランチの分岐元でならともかく、先頭でやるなら rebase -i かな。 自分はほとんど使った経験ないけど
revabse -i があることで、割と気楽にコミットできる心理的メリットみたいなのあると思う チームによってrebace派とmerge派があって、
色々難しいお。 revabse vs rebace vs rebase vs merge
ファイッ マージのポリシーの派閥はこのぐらいある
rebase せずに merge --no-ff 派
rebase せずに merge 派
rebase して merge --ff 派
rebase して merge --no-ff 派 branchとcheckoutとcherrypickとrebase -iとmerge全部バンバン使うでしょ >rebase して merge --ff 派
>rebase して merge --no-ff 派
どちらか一方を revabse に汁 所詮は道具なんだし、
必要なときに調べながら使えばいいと思う stashしたらcheckoutできなくなったんですが >>597
stash の pop や apply はコンフリクトする可能性があるから、git status で確認 stageしてない変更を全部消すのってどうやるんでしたっけ? >>601
ありがとうございました
>>602
サーセン
ググってもわからんかった いくらバージョンアップしても今まで以上のことは何もする必要ないからもうバージョンアップしなくていい git reset --hardを最強に高速化してほしい Git 2.21」リリース
2019年2月26日16:30 末岡洋子
https://mag.osdn.jp/19/02/26/163000 gitkで表示されるコミットヘッダに Follows: という直近のタグっぽいものがあるけど、
同じものを表示するコマンドって何?
git log かなと思ってヘルプを探したけどわからなかった。 Follows が前で Precedes が後ろなのね
git describe で直近の tag は分かるけどちょっと挙動が違うし、Precedes は調べられなさそう
git tag --contains の結果をひとつづつチェックして Precedes を、
git tag --no-contains の結果をひとつづつチェックして Follows を、
探してるのかな? GitのwindowsGUIの質問はスレ違い?
普段MercurialでTortoiseHgを使ってるのだが
Gitも触ってみようとTortoiseGitを導入したところ、これが使いにくい
複数のブランチがある状況で、リビジョングラフを見ながらdiffテキストをサクッと見たり、
コミット等を行ったり、リビジョンに復旧したりしたいが
TortoiseHgだと単一ウィンドウですべて収まってできて便利なんだけど、
TortoiseGitは状況の把握と操作が複数のウィンドウにまたがっていて簡単にはできないような気がする
コマンドライン実行をそのままウィンドウ出力にしている感じ
これに文句が出ていないのは、何かうまい使い方があるということ?
(いくつかのウィンドウを開きっぱなしにするのが常識とか)
それともGitとMercurialの考え方の違いからくるものなのか? 文句が出ないのは誰も使ってないから
Git for Windows の方が良い エクスプローラに統合されるのはウザイから亀シリーズは使わないなあ
自分はVisual Studioとgit bashの併用だけど、単体のGUIはSourceTreeが人気らしいね >>617
妙に情報少ないなと思ったがやはりTortoiseGitはマイナーか
ありがとう >>618
SourceTreeいいですね、ありがとう
TortoiseGitは意味わからんな、なぜHG版とここまで使用感が違うのか
歴史的な経緯だろうが SourceTree派だけどお気に入り。
git初めての新米たちにも教えやすくてありがたい。 sourcetreeはインストールして放置してるけど何が強みなんだろうか
ブラウザ(プルリク/マージ)+VSCode+GitLensで出来ない機能ってある? GitLensいいな、もう少しでIntelljIDEAのGit拡張に追いつけそう >>622
VSCodeに依存せずに使えるメリットがある >>616
ログを表示したあとのグラフのウィンドウの左下にある2つのチェックボックスにチェックを入れて
すべてのブランチを表示
プロジェクト全体を表示
を有効にすればよいのでは TortoiseGitめっちゃ気に入って使ってるけどなあ
日本語化するとGitのコマンド名と離れすぎてよく分からなくなるから
英語のまま使うのがいいよ >>622
強みか微妙だけど、gitに絞ったGUIだから初心者には取っつきやすいし操作が覚えやすいと思う。 >>620
どちらかと言うとTortoiseHgが特殊。 そりゃまだsvn使ってる現場さえも珍しくないですからね >>630
その理屈はおかしい
svnはgitが出る前の標準だった。使ってる所は多かったので今も残ってるだろう。
そしてsvnの次として、同時期に似ているコンセプトで git or mercurial がでてきた。
すぐにgitが勝利したので、mercurialを使ってる所は少ないままだったはずだ。 >>631の謎理論が面白かったので俺も謎理論を展開してみる
svnからgitやmercurialに移行する動機は大いにあってもmercurialからgitに移行する動機はさほどなく、場合によっては新しくmercurialを採用することもありうる
となるとsvnユーザーは出涸らし状態であり、svnよりmercurialの方がユーザー数が多いと言える ?
ユーザー数や検索トレンドの推移を見ればどの理屈が事実に最も近いかわかると思うんだが >>632
svn -> mercurial ・・・ 初期に僅かに移行。その一部はgitに移行。最初から少なく更に減っている。
svn -> git ・・・ 殆どがこのケース。多い
svn ・・・どちらにも移行できない所がまだ残ってる。移行したとしてもgit
mercurialに移行した所よりも、svnのまま移行できない所の方が多いので
mercurialのユーザーは少ないよ。 facebook は mercurial 使ってるはず
google も独自 vcs で、git をメインには使っていない What's cooking in git.git に switch と restore について記載来た。
> Two new commands "git switch" and "git restore" are introduced to
> split "checking out a branch to work on advancing its history" and
> "checking out paths out of the index and/or a tree-ish to work on
> advancing the current history" out of the single "git checkout"
> command.
早くて 2.23 あたりかなー >>450
GCCのgit への移行は
昨年末に
GCC Is Still Months Away From Transitioning To Git, Reposurgeon Being Ported To Golang
https://www.phoronix.com/scan.php?page=news_item&px=GCC-Reposurgeon-Py-To-Go-90
って記事が出て、さらに数か月かかるのかと思っていたら、
https://gcc.gnu.org/wiki/GitMirror
を見ると readonly ではアクセスできる模様。 gitattributesとeditorconfigで文字コードと改行コードが二重管理になってしまった
どっちかを移譲にできないものか git flowについてと、実際の運用に適用する時について教えてください。
一次開発が終わりリリース済みのシステムがあります。今後二次開発があり、開発開始時期は同じですが、顧客テスト(例えば6/1、7/1、8/1)、本番リリース(例えば6/20、7/20、8/20)の時期が異なる機能が複数あります。
一次開発終了時点をmasterブランチ、二次開発用にdevelopブランチまでは作成しました。
今後開発する際は、developブランチから機能ごとにfeatureブランチを作成し、顧客テスト時はテストを行う機能(featureブランチ)をdevelopブランチにマージする運用が良いのでしょうか?(顧客テストokならdevelopをmasterにマージ)
気になっているのは、先に8/1顧客テスト用の機能を作った場合、マージしない(できない)ままのブランチが発生するのが良いのかわからないことです。
プルリクは使用しない想定です。
良い案があれば教えてもらえると助かります。 その3つの機能が依存関係が少なくてパラレルに開発した後にマージするので問題が起こりにくいのか、
それとも依存関係があってシリアルに開発、もしくは互いを調整しながら開発してしないといけないのかで違いそうな気がする。
前者ならはじめにブランチ作ってdevelopにマージしてテストすればよいと思うけれど、
後者ならdevelopブランチ1本で開発していってテストのときだけ
その時点でdevelop顧客テスト用のブランチを切ってテスト対応はそっちで行って
developにマージする、とかが良いような気がする git flowならreleaseブランチを作ろうよ
8/1顧客テストの機能をdevelopにマージしたいけど前の機能がまだmasterにマージできていないので無理、という状況を避けられる
リリースのタイミングが多少変わった程度でブランチ設計を見直さずに済む >>642
git ffで検索ぐらいしろ。
fast forwardの略。 個人プロジェクトの管理がにっちもさっちも状態に陥ってきたので、噂のGitを導入しようと勉強開始したのですが。
現在オーム社の『入門git』(初版平成21年/第9刷平成25年)を読んでいるのですが、途中まで読んでやや古い書籍である事に気が付きました。
当方Windows10なのでGitHubがMS社に買収された事だし導入もかなり簡単になってるかな・・・と思ったら、CygwinとMSYSへの記述があって、思ってたのと違うと改めてネットで調べ直したのですが。
>>1の関連サイトの"Pro Git - Table of Contents"によれば違う分類による方法が幾つかあるみたいですね。
そうなると、読み始めたオーム社の入門書はどこまで現状に即しているのでしょうか。
基本的な操作が変更される事はないでしょうが、非推奨とかになる事も考えられるので。
あと、良い書籍紹介があると嬉しいです。 >>645
ごちゃごちゃ言わずに手動かさんかいボケェ! >>645
何も考えずにgit for windows入れたら済む話だと思うよ
cygwinがベースの技術使われてるけど別途インストールする必要はないし >>645
gitとGitHubは全く別のもの。プロジェクト的には無関係。
gitの本がGitHubについて詳しく書いていることはまずないし、
買収前のGitHub社も、Microsoftも、gitの開発には関わっていないといって良い。
(Git LFSなど一部影響を与えているがコア部分ではない) javascriptの勉強するためにJava始めました観たいな感じ GitHubがGitクライアントのひとつではないということは、エンドユーザーからみればどうでもいいことなのかもしれない
それこそがSaaSの目指すべき透過性のry >>651
githubデスクトップアプリのことを言ってるんじゃないかな >>646-652
反応ありがとうございます。
当方WINDOWSに入る前もファイラ時代が長かったもので、コマンドライン感覚が退化してしまっています。
深く考えず教本を読破して、その操作を猿真似して馴染む事を目標に作業再開しようと思います。
指針を与えてくださり、ありがとうございました。 別に無理して最初からコマンドライン使う必要もないと思うけど
Visual StudioとかVSCodeとかGUIからgit扱えるし 今時gitが使えないとチームで開発できないからプログラミング言語同様必須知識だよ 基本的な流れは分かったけど
細かいコマンドやオプションまで入れたらとんでもない量ある https://qiita.com/xtetsuji/items/555a1ef19ed21ee42873
upstreamという名前を付けてるけど
リポジトリ自体に名前がついてるんじゃなくて
リポジトリの利用者側が勝手に名前を付けてるの?
おかしくない? そうすることで名前の重複問題を解決させようとしてるのか
名前空間みたいな概念が無いのか ローカルリポジトリから見たremoteの名前なんだから勝手につけて当然。originだってそう。 >>659
エイリアスだよ
本当のリポジトリの名前は、URIそのもの
URIは一意なんだから名前空間などなくてもかぶらない
長いから、originとかupstreamという別名を付けてるだけの話 git remote -v
でリモートリポジトリの一覧が表示されますが、
push先として設定されているリモートリポジトリを一部削除する事はできますか?
fetch元としては使い続けたい そのリモートリポジトリはgithubのなんですが
そもそもgithubのリポジトリは権限が無ければ書き込まれないかも、と思ったんですが
合ってますか そりゃ他人が勝手にウイルスコード埋め込めるわけ無いやろ いや、できるんじゃないか・・・これ・・・
githubガバガバ ローカルリポジトリに権限の概念はないぞ。
リモートにpushできるかは権限による。 >>637
ESR Switches To Threadripper But His GCC SVN-To-Git Conversion Could Still Take Months
https://phoronix.com/scan.php?page=news_item&px=ESR-Threadripper-GCC-Git
gccのsvnからgitへの変換はまだ数ヶ月かかるらしい。 >>673
あるやろ。
いまどきgitじゃないと開発者が寄って来ない。
開発者が居ないOSSは死ぬよ。 「今時」ってそれだけの理由かよ。
開発者だけどどっちでもいいわ > 開発者だけどどっちでもいいわ
どっちでもいいってことは、どっちも知ってるはずだけど
違いしてていていってんの?svnとgitの比較言える? git cloneしたフォルダをコピペで別の位置に移したら
何か問題出る? githubで自分がフォークしてるプロジェクトがあって
他の人もフォークしてて、他の人がその人のリポジトリでやったコミットを本家にPRしてて、
でもマージされてなくて、でも自分のフォークでそれをマージしたい場合、どうすれば? >>675
emacs, ruby など大きなプロジェクトがgit に移行している。
何故移行したか、どんな効果があったか、事例見ると判る話。 masterブランチで開発していて、
リリースする時、masterの全部の修正をリリースするんじゃなくて
一部だけリリースする時、リリース用のブランチを作ってそこに
リリースしたいもののみを集めるってやり方でいい?
そしてリリース用のブランチをリリースするわけだけど、
そこにはmasterに入れてないコミットが含まれる。
READMEの修正とか
そういった場合、masterにそれを戻さないといけないんだけど、
リリース用のブランチをmasterにmerge戻すと、同じコミットが二重にできちゃうじゃん?
それを防ぐにはどうしたら良い?mergeじゃなくてcherry-pickで戻す?
それともsquashする?(コミット消したくないけど)
それともリリース用のブランチをmasterからの変更にrebaseしてから、masterにマージする(少し面倒そう) 基本個人開発なんでそこまで面倒くさいことはしたくない
今回バグ修正のプルリクが来て、今masterでやってる作業の切りが悪いので
プルリクと先に出せる部分を、先に出したほうがいいなと判断したので
例外的にリリースブランチを切った git flowなんてめんどくさくもなんともないやろ
むしろmasterで開発してるからそんなめんどくさいことになってるんじゃないか github flowへの文句なら、github flowを論破してからにしてくれ 説明しなくてもわかると思うが、
一人github flow = レビューする人はいない = ブランチきってその都度一人マージ = masterでの開発と何も変わらん 日本語通じてないのはお前だ。
俺はgit flowが複雑であることは世界共通の認識であることを知っているし、
その事実に関して反論していないし、興味も質問もしていない。
git flowが複雑ではないという話をしたいならよそでやれってこと はっきり言わないとわからないようだから言っておくと
git flowは複雑(事実)だから使わないと言ってる。
git flowは複雑(事実)ではないと主張したいのなら、俺ではなく世界とやってくれ
git flowは複雑(事実)ということは、俺が主張していることではない。 >>693もうレスしないでね。
ということで >>684 の質問へのレスよろしく なんで1回git flowの話からgithub flowの話に逸れたん git flowとgithub flowの区別も付いてないのは置いといて、複雑なので我流でやりますというなら好きにやればいいんでないの githubで本家にPR出して、しかしやりとりのなかで
revertだとか再コミットだとかでヒストリーが伸びて、
本家側は最後の1コミットだけをマージする、ということはできるんだろうか? githubでOSSを修正したい場合、
さらにそのOSSをカスタムしたソフトウェアを作りたい場合、
フォークを2つ作るべき? もし最後の1コミットだけマージできるとして、それにどんな意味があるの? 例えばコミット1をPR、問題点が指摘される、コミット1をrevertしてコミット2を作る。
このときコミット2だけをマージして欲しい。
ところがgithubの画面上ではコミット1もrevertもコミット2も表示される。
その一連のヒストリーが表示されてしまう。
さらに、PR中に本家の追従をしてマージコミットが入るかもしれない。 git使うとヒストリーを適切に保つ必要が出てきて
開発が難しくなる 実際の作業ヒストリーは紆余曲折を経ているわけで、
自分のforkリポジトリにそういうヒストリーがあるのは妥当。
追跡しやすいし。
ところが本家にマージする段階ではヒストリーを圧縮して1コミットにしたい。
でもそんな操作できなかった。
しかもPR中にも紆余曲折してヒストリーが伸びる。
どうやってヒストリーを圧縮すれば? squashするとマージした人がAuthorになるという記事があったが
コミットした人になると言ってる記事もあるな
https://qiita.com/ko-he-8/items/94e872f2154829c868df#squash-and-merge
>この時、マージコミットSのAuthorはBになります
https://qiita.com/pshiko/items/1e9acd114b7e85884866
>最近某OSSに出されたPRが、git merge --squash <branch> でマージされたことにより、コミットのAuthorが書き換えられてしまった >>695
> なんで1回git flowの話からgithub flowの話に逸れたん
よく見ればわかるが、git flowの話もgithub flowの話もしていない。マージの話
ただ「git flowが複雑で、それよりもシンプルなgithub flowなどがある」のに
git flowが複雑だという事実を知らなそうな人に、git flowを使えと言われたから、
世間の認識を知らないなって思っただけ >>702
単に本家のコミット(通常はmasterのHEAD)からの
修正へとrebaseすればいいだけ >>696
> 複雑なので我流でやりますというなら好きにやればいいんでないの
git flowが他のフローに比べて複雑なのは世間で共通している認識なので
その話をすることに意味はない。そのレベルの話はしてない。 git難しい
コミット内容に問題があり修正したい
→修正&動作確認成功
→前のコミット内容は単に要らなくなったからrevertしよう
→作業ディレクトリで変更されているせいでエラー
→じゃあrevertじゃなくて新たなコミットで
みたいな。revertダメなんだ、みたいなのが多い。
分かる?gitのために発想を制限される感じ。
作業手順を見通せるようになるには相当な経験を積む必要がある しかも人によってrevertした方がヒストリー的に好ましいというかもしれない
でも作業手順上、revertしていいのかは新しい変更内容で動作確認をした後じゃないと
分からないから、revertは自然じゃない。 >>707
> 作業手順を見通せるようになるには相当な経験を積む必要がある
gitは作業手順を見せるもんじゃないよ。
変更履歴を見せるのであって、作業履歴を見せるものじゃない。
あんたが一日こういうふうに頑張りましたっていう報告はいらない
欲しいのは結果
だいたいrevertは、みんなが共有しているブランチでやるものであって
個人的なブランチでは使う必要がない
前のコミットが要らなくなったらrebaseして消すのが普通
欲しいのは結果であって、途中の作業報告なんかソースコードの修正の邪魔
(作業報告したけりゃissueでもprでもslackでも好きなところでやればいい) 作業の履歴はコードベースでどんな間違いが起こりやすいかが分かる
rebaseで履歴を消すというアイデアは同意できない > 作業の履歴はコードベースでどんな間違いが起こりやすいかが分かる
それ何が目的?何がしたいのかわからない。 >>710
ああだこうだという試行錯誤があると
コードの変更が "見通せない"
あんたの試行錯誤のあとなんかどうでもいい。
結果を見せろ。重要なのは結果だ。 ただのアップロードツールだとしか思ってない人いるみたいだし
そういう人はロダ使えば良いと思うの コードの変更は本家のヒストリーで分かるから
forkリポジトリに細かい履歴が残っているのは基本的に良い事 >>715
だから試行錯誤の後とコードの変更履歴は別
残すのはコードの変更履歴(みんなに公開する確定した修正の履歴)であって
試行錯誤の履歴(みんなに公開しない確定してない修正の履歴)じゃない
他人が見る価値がないようなものを残したって
見ないんだから意味ないだろ。
それはノイズでしかない >>717
当然pushする前にも試行錯誤するが、
レビューしてもらうためにpushする必要がある。
ただしその内容は確定した変更内容ではないので
全てを残す必要はない >>717
わかった
とりあえずpushしておくよ コミットの内容はあとから見るっていうことを
全く考えてないんだよなw
あとから見る時、見なくても良いものがたくさんあったら
本当に見なければ行けないものがどれかわからなくなる。
あとから見るということを全く考えてないから
記録だけしていればいいと間違った考えになる
あと見るだけじゃなくコミット単位でcherry-pickしたりするので
一連の修正がバラバラになってると再利用できなくなる。 Git v2.22.0-rc2
先日のLinusからの指摘の修正は入ってない模様。 Gitはコミット間違えたとかブランチ名間違えた時の修正がめんどくさい >>723
どういう手順で修正してる?
ちょっと書いてみたよ
(どうせやり方知らないくせにって思ってる) >>563
>>636
新しいコマンド、 "git switch" と "git restore" は次の2.23で入る模様。 Git v2.23.0-rc2
Qiita に git switch / restore の記事を載せるべくアップを始めた奴いる? そもそもキータ()なんて情弱サイトに書くやつ少なくね gistにメモ書きできない人間にキータ(笑)は向いてない gitの本探してるのだけど
cuiメインでguiの本があまりなくて困っています
いい本知りませんか? GUIはいっぱいある上に決定版がないからあんまりないんじゃないの CUIでgitの概念学んだらGUIにほぼそのまま応用できるからGUIの本は不要だわな TortoiseGitでのマージが感覚と反対で最初逆にやってしまった セキュリティの都合上インターネットに繋げない開発環境があって(ファイルを1個やりとりするのは可能、rsync的なことは無理)、手元のマシンとのリポジトリ同期に困ってたんだが
(format-patchとamじゃhashまでは面倒見てくれないしコミット毎の管理になるしで面倒)、
bundleという機能を見つけたんだがすごく便利だな
コミットの範囲は確認しなくちゃいけないけど、push、pullとほとんど同等な感じで使えるね。 git switch/restoreはgit checkoutがコンテキストによって全然違う動作をすることを避けるべくブランチ間の移動はswitch、ファイルをHEADまで戻すはrestoreにしたってことなんだな
確かにcheckoutでやらかしたことあるから嬉しいんだが、switch/restoreに慣れると古いgitにイライラしそうだな。 >>736
GUIなんていらない
CUIなら必要なレポート簡単に書けるでしょ
git log --name-status --pretty=format:"Xxx Yyy Zzz" |foo|bar|baz... サブプロジェクトを使ったことがありません。
現プロジェクトの3つの派生プロジェクトを始めるることになりました。共通のソースは9割です。此の場合は、共通のソースをサブプロジェクトに移して使用するのが良いのでしょうか 747はサブプロジェクトじゃなくてサブモジュールの誤りです これからも派生が増えてくならそれでいいけど、あまり増えないなら、ブランチで管理するかな。 >>747
管理体制次第だな。
普通はブランチ管理じゃない?
共通ソースの管理者が別にいるならモジュール化も検討するけど、そこまで大きなプロジェクトならgitプロフェッショナル必要な気がする。 >>747です。
ご意見ありがとう。 変更が多いのは共通部分なんでブランチで管理すると他のブランチへのマージを忘れそう。 今後マージするかどうかは運用次第として、一旦ブランチはしておけば良い
ブランチしたのをマージしない運用にするのは簡単だけど、ブランチしないで分離したプロジェクトをマージするのは面倒くさい 個人開発者です。
2年前までlocalでgitコマンドを使ってた。
その後、開発から離れてたんだけど、再度戻ってきた。
昨日からGithubへpushする様になって、色々勉強中。
ヨロピコ! >>755
ちなみに参考になったのは、
実践Git、第4章
Web+DB Magazine vol. 50(2009)、はじめてのGit
Pro Gitって参考になる? >>757
>ProGit
thx
iPadで読もうとSendToKindleってメールサービスでmobiファイル送ってみた。
ドキドキしながらKindleで同期すると本が来た。
ヨカっタァ。
しかし、すごいボリュームの本だ。 tree object
commit object
のデータ構造を理解した。
coutesy of WEB+DB vol.50 >>758
最近使い始めたAir Dropってので送ろうとしたらNGだった。 GitHubだけど
パソコンのwebブラウザで
new repository
は出来るのに
スマホのwebブラウザだと
new repository
のボタンが出て来ないのはなぜ?
あとクライアント(コンソール)からコマンドで
new repository
ってどうすれば出来る? >>761
俺もlocalのterminal.appで作業する際、remote(Github)にnew repositoryを作製する方法を知りたい。
多分、出来ないのかな? pythonとかでスクレイピングでもすればいけるかもしれないが
最近はgithubも二段階認証になって色々面倒なことに >>764
出来ない理由
terminal.appでnew repositoryできるとすると、数万のrepositoryがbotによって作製されるかもしれない。
shell scriptを書いてやれば、そういった嫌がらせも出来てしまう。
それは避けたいので、ボタンを使ったUIになってるのでは?◀New Repositoryが。
あくまで俺の妄想っす。 markdownで書いた、図入りのテクニカル文書を管理したいんだけど、blogでは色々面倒で、GitHub使おうかと思うんだけど、良いかなぁ?
ソースコードのsyntax highlightが出来て、imageも埋め込めるmarkdownを管理したいんだけど。
それとも、便利なblogサイトある?
livedoor blogをsyntax highlight plugin付きで試したら、大なり小なり記号<、>をエスケープしないとsource codeを表示できないので、ガッカリなのだ。 GitHub GistにMarkdown文書を置いた時に、imageファイルってどうやって管理すれば良いのだ?
imgurとかに置いて、url指定するってのがbest practice? >>768
ここにいくつか解法が示されてる。
https://gist.github.com/Tatzyr/3847141
しかし、
GitHub上のフォームで画像をコピペするとGitHubのS3にアップロードされ、URLがはりつきますよ。
これは、どう言う操作の事だ? gistに貼り付けたmarkdown中にimage貼り付けたけどresize出来ん。
https://gist.github.com/uupaa/f77d2bcf4dc7a294d109
ここにresizing howto記載されてるが、Gistでは効果無し。
<img>タグを使えば上手くresizeされるんだけど、![](url)形式で書きたい。 >>772
自演じゃなくて、スレッド(のつもり)なんすけど。
Xcode11 Release来た。
XVim2.xcplugin動くかな? 過疎ってんだから日記帳にするなり好きにすればいいよ >>774
あんがと!
Web+DB vol.50 2009の初めてのGit、って記事、ヨカっタァ。
tree object, commit objectのデータ構造がよく解った。
あと、Garbage Collectionの記事が読みたい。どこからも参照されなくなったcommit objectがpurgeされる話とか。 >>761
GitHubに対して出来る事は、git-remoteコマンドのオプションのみ!
new repositoryの作製はterminal.appからコマンド打って出来ない。
see git help remote >>763 の
https://codenotfound.com/github-add-remote-git-gui-windows.html
ここの
Configure Git GUI
からの
Create New Repository
はどういう仕組みで実現してるのだろう Fetch Immediately じゃなくて
Initialize Remote Repository and Push の方を選んだときの動作ね >>778
Configure GitHub
のセクションに記載があるとおり、WebサイトでNew Repositoryする。
Git Gui on Windowsからはできないんじゃ無いの? >>783
これダァ。
great THX.
gg://github rest api stackoverflow
how to create repository in github through github api
github community GitHub API Development
REST API v3 Not able to create repo using the code given >>637
>>672
GCCのgit への移行は、もうちょっとらしい。
GCC's Conversion To Git: "Within The Realm Of The Practically Achievable"
https://www.phoronix.com/scan.php?page=news_item&px=GCC-SVN-To-Git-September-2019 それって副産物としてSubversionからGitへの変換プログラムが生まれるってことだよな? 一般的な応用を期待しているならgit svnという十分に便利なものが既にある じゃあそいつはGPLじゃないからつかわんかったってことか RMSがもっと若ければ
とっくにtigとか造ってんじゃね >>788
>>791
GCCのSubvesion のダンプはかなり大規模かつ複雑でgit svn ではgitのリポジトリには
変換できないらしい。
なのでESRが自分のツール(https://gitlab.com/esr/reposurgeon) で変換しようとしている。 svnのダンプが開発者にも謎な物になってしまってるのが
原因らしいが 共有フォルダ上にリポジトリ置いてローカルで開発ってのをやろうと思ってるんだが大丈夫じゃろか
前からいる人はずっと一人でやってた環境らしくてバージョン管理というものをやったことがないらしい
調べたけどSVNはそういうの止めろってことらしいからgitを考えているのだが サンクス。ちゃんと動いた。ほっとしたしリモートからプル出来たときはちょっと感動したわ
ありがとうvisualstudio。そしてgithubもtortoisegitも申請しなきゃいけない会社は潰れろ >>798
githubみたいなクラウドサービス使うのに許可がいるのは当たり前だろ 共有フォルダSVNがダメならgitもダメじゃないの?なんか差分あったっけ masterからdevelopブランチを切って、ローカルではdevelopからfeatureブランチ切ってそれをいじる
developにマージしてdevelopをプッシュする。不要になったfeatureは削除する
っていう一連の流れを勉強したんだけど、しまったここの関数ちょっとおかしいとかそういうほんとちょっとした変更でもいちいちfeature作るって作業はしたほうがいいの?
あんまり意味が無いような気が チーム開発なら必要。必ずコードレビューするから、ローカルでdevelopへのmergeなんてしない。 なるほど
二人だけのチームで多分コードレビューなんてしもしないと思うんですけどその場合でも必要ですかね
あとfeatureブランチはリモートにはプッシュしないっていう認識で大丈夫ですか featureの扱いというよりは、developへのmergeをどこでするか統一しておかないと、各々の環境でdevelopの履歴が分かれていくやろ featureをリモートにpushして、コードレビューおよびdevelopへのmergeをおこなうのが一般的。ローカルのdevelopは、基本的にfetch or pullとfeatureの作成用途のみ。 むぅそもそもリモートで作業するってのが考えてなかったというかその辺りよくわからないですね
>>796なんですがリモートリポジトリってローカルで作業していったものをどんどん突っ込んでいくものという認識です
ちょっと勉強が足りなかったようです 普通はGitHubやGitLabみたいなホスティング環境を用意するからね 2人に閉じた開発なら結合後にdevelopだけでごりごり開発してもいいよ
いつの間にか気持ち悪いマージコミットが多数生じるだろうけど
気持ち悪いと感じる人がいないならそれはそれで マージコミットも歴史の一環なんだから、必要と思う派だな俺は developからdevelopへのマージコミットがキモいということでは コミットツリーの美しさとかにこだわりが
ある人がいるらしい それは海外の有名OSSでもわりといる
俺は個人的には全く気にしないけど >>815
そうそれ
マージコミットのあいだにも価値の多寡があるということ
歴史としての価値があるからこそノイズが多いと経緯を追い難くなる
そこを一切否定するならrebaseコマンドの存在意義も(ほぼ)否定することになる 気持ちはよくわかるが、pull requestベースでの開発だとコミットはあまり気にしなくなるよね
それよりcherry-pick厨はマジで○んでくれ 10人くらいのオフィスで現状何でもかんでもnasに突っ込んで管理してます
HTMLやらcssやらのファイルだけでなく、画像データやofficeやAdobe系のファイル諸々、トータルで2テラくらいあるんですが、git使った方がいいですかね? Git v2.24.0-rc1
sparse-checkout は2.24には入らない模様 >>820
バイナリはあんまりメリットないと思うぞ >>825
rc0のバグが二件MLに投げられてたけど、
rc2では一件しか反映されてなくて、
ds/commit-graph-on-fetchは反映されてなかったので、
cookingのリプライで、この件はa corner caseでは無いってメールが投げられてる。
rc3が出そう。 うっかりデバッグする前にコミットしちゃったときに限ってデバッグするとバグが出るのはなぜなのか・・・・・・ うっかりコミットしてもpush前ならなんとでもなる バグがでたらその場でコミットするすらある
その後確実に直したかを確認できるように コミットはなんぼでもするでしょ
プッシュでさえみんなと共有してないブランチでなら構わずやることすら多々ある visual studioで使ってるけど本当に便利すぎて手放せないわもう
例えコミット細かくやりまくってもうどこで何をやったか履歴でよく分かんなくなっても関数の上に変更回数が出てしかもどのコミットだったかとかすぐ分かる
ありがてぇありがてぇ visual studioはやっぱり便利なIDEだよ githubでプルリクをマージする人ってプルリクを送った側と受け取った側とでどちらが良いんでしょうか
個人的にはプルリクって、もしこの修正が問題なければ取り込んでくださいって意味だから
受け取った側が承認してマージまでするのが自然な形だと思うんですが、
なぜか今の職場ではプルリクを送った側が自分でマージするルールになっています
私がおかしいのでしょうか >>837
そういうルールもありだと思う
承認する人が多忙だとその方が仕事が早いし それってアクセスコントロールしてない無秩序状態ってことだろ?
頭のおかしい開発者が勝手にマージしはじめたらめんどうだ
承認者とマージ実行者を別にするのはよろしい
マージ実行者を開発者全員にするのはよろしくない それだってケースバイケースだろう。
たしかに頭のおかしい開発者が存在する場合はいろいろ考慮が必要だろうが。 オープンソースのプロジェクトにプルリク送る場合って受け取った側が承認してマージまでするじゃん
githubを作った人の想定では、プルリクを受け取った側がマージするのが正しいんだと思うんですよね
ていうか自分で送り付けて(プッシュ)おいて、自分でマージするってことはそれはもう"プル"リクエストではなくて、
"プッシュ"リクエストじゃないんですかね
githubを作った人の想定通りに素直に使うのが自然で良いと思うんです 開発効率を上げるとかバグを減らす為にルールを作るので
ルールを守るためにルールがあるのじゃない プルリクを送った側がマージすると開発効率が上がったりバグが減るんですかねちょっとわかりませんね ここまでくるとちょっとウザい。
あんたの疑問はもっともだと思うからあとは職場の人とよく話し合ってくれ。 どこにも書いてないこと言い出して逆ギレしてるようでは
かなりお荷物さんだろうねえ 社内に頭のおかしい人なんてそうそういないだろと思ったけど
こういうレスを見ると自信なくなる
最初の質問「私がおかしいのでしょうか」については
そうかもねと答えざるを得ない どんな解釈をしたら、お前”が”し ねになるのか分からない笑
君の質問は正しいよ、あなたがおかしい。 >>839
職場に頭がおかしい人がいるならgitで解決しようとしてる場合じゃない 私がおかしいのでしょうかと質問する人は大体周囲が見えてない自己中なので、何言っても無駄 お前の書き込みなんか何の価値もねえわ
向いてないから死ね TortoiseGitのグラフ表示時矢印が古い方を指すように下向きに
なった。2.9.0 設定何か触ったかな 変更のない同一ファイルのときに
git commit -am “こめんと”
を打つとエラーになるけど、エラーを回避するコマンドとか無いかな?
もしくは更新・差分があったときのみcommitするようなパラメータとか >>854
>もしくは更新・差分があったときのみcommitするようなパラメータとか
まさにこれがデフォルト動作だからエラーになってるんでは
更新・差分はないが直前のコミットメッセージを直したいということなのであれば git commit --amend -m "こめんと" すれば良い Git v2.25.0
リリース直前にgit rebace -iの機能を巻き戻した模様。 「Git 2.25」リリース、「git sparse-checkout」コマンドの追加や細かい機能強化が行われる
2020年1月14日17:15 末岡洋子
https://mag.osdn.jp/20/01/14/171500 大体ググって覚えて使ってる個人の感想としては、
ざっくり『addしてcommitしてpush、後はbranch作ってなんか切ったり結合したり出来れば大体なんとかなる』というノリでgit使ってるんですな何か他に知っておいた方が良い操作とかあるんでしょうか?
ブランチ名やコミットメッセージを付ける等の補助的なオプションに関する知識は勿論前提として。 初期に便利だと思ったのは
stash
ignoreのバリエーション
skip-worktree
reset
reflog
あたりかな stashなんか怖くて別の場所にチェックアウトしちゃう >>862
何をおいてもgit rebase。これ使わないとgitの価値が無いと言ってもいいぐらい ちょっと違うけど、vcodeのアドオンにあるgitのdiffとかhistoryを見る機能は便利。 はちゃめちゃに大きくなったリポジトリの整理でgc, filter-branchなんかは使わなきゃいけないときがあるね。
大体開発もクライマックスで泣きながらやる羽目になるイメージがあるけど。 >>868
神経質でええカッコしいの俺にとっては重要機能 遅くなりましたが皆さんありがとうございます、なんとなく枝を繋げればいいや
というイメージでしたがリセット機能や消去機能こんなに充実してるんですね。
正直広まってる理由オープンかつコストが掛からない上有名なソフトが集まっているから
だと思ってたんですが、コマンドで大体できるしGUIも綺麗ですしそこらのソフトウェアが
内蔵してる管理機能より遥かに有用なことを色々聞いて実感しました。 masterブランチをpullし忘れてmergeがめんどくさくなる時あるんですが、どうすればいいですかね? rebaseは下手すると似たところで何度も競合して余計面倒になるような mergeがめんどくさくなった時点で気付くだろうからそこでやり直せばいい。 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は履歴を辿れないので困る 初歩的な質問で申し訳ないんだけど教えてください
今小さなプロジェクトを個人で動かしてて、部署のファイルサーバの自分のフォルダにリモートリポジトリを置いて、visual studioでコミットしてプッシュしてみたいな単純な使い方してます
それで今度チームでやることになってgithubとかgitlabとかの導入を考えているのですがプルリクエストというのがよく分かりません
色々サイト見ているのですがプッシュしたあとにプルリクエストを作成して……みたいなこと書いているんですが、プッシュしたらリモートリポジトリ変更されちゃいますよね?
プルリクエストされた担当者がコードをチェックするならプッシュの前じゃないといけないのではと思うのですが
よろしくおねがいします >>881
別ブランチにコミットしたものをpushするんだよ。
んでもってそのブランチに対してプルリクエストする。 o - o - o - o <- ローカル/master, リモート/master
\ o - o - o <- ローカル/ブランチ1
ローカル/ブランチ1をpushするんだよ。
ブランチの切り方はgit branch --help見てね。
チーム開発の記事を読んでおくといいかもね。
ブルリクについてはgithubとかの開発について調べてみるといいよ >>883-884
あぁぁそういうことですか。あ、いや自分でやってるときはgithub flowでしたっけ。masterとdevelop切ってそこからfeature切ってみたいなやり方してたんですけど
>>884だとリクエスト受けた側がmasterにマージする感じになってますけどmasterって製品版だからあまりいじっちゃまずいんじゃありませんでしたっけ。マージ先は受付側が決めるってことでいいんですかね
それと別ブランチ切らずにmasterブランチにいじってプッシュしてきたりしたらまずいと思うんですがそれは拒否できたりするんですかね pull request 来てそのまま merge して repository 壊すタイプ レポジトリは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にマージするんじゃないかな。 gitって初心者には難しくないですか?
まともなレベルと規模のチーム開発を経験しないと、その機能がなんのためにあるのかイメージし辛いし
こういうのってどうやるの?って毎度毎度ググる日々… 無理してでも覚えてもらう以外なかろう。
pull, push, add, commit, checkout, status, diff
これくらいをとりあえず覚えてもらって、困ったら聞いてもらうようにするとか。 >>888
理解しました。1.と2.が別物という認識がありませんでした。なるほど何分一人で一つのリモートに対してずっとやってきてたもので リモートのが壊れただけなら
自分のところにある正しいものをpush わりと push -f を気軽にやるのなとビビったことはある >>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 githubの使い方覚えようと思ってsourcetreeとかGitKrakenとかCUIでやるかとか色々検討したけど結局いつものVisualStudioにエクステンション突っ込むので落ち着いてしまった
だめだVSに完全に調教されている。俺は軟弱なプログラマだ >>901
GitHubの話がスレチなんじゃないか?
ソースコード ホスティング総合【GitHub,GitLab,Bitbucket等】
https://mevius.5ch.net/test/read.cgi/tech/1531824290/ >>902
でも>>899の言ってる内容はGithub限定の話ではないけど 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. Qiitaだけでも、git入門、git基礎、いまさらgitについてまとめてみた的なのが乱立してる時点で
初学者に理解されにくい糞仕様が存在してるのではと思われそう。 管理者が使うコマンドとフローを制限してやる必要があるな
あと定番で使うコマンドのオプション指定がハイフン2つなのはイケてないと思う ハイフン2つのオプションの方が自動補完しやすいから楽じゃん GUIがなのはCUIが使えない人に対するハラスメントだと言われたことある CUIおじさんとORM嫌いおじさんとstaticおじさんて同じ人? 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" 「Git 2.26」リリース、git rebaseのデフォルトバックエンドが変更される
https://mag.osdn.jp/20/03/24/150000 git が難しいのは利用グループごとに使い方が異なっていて標準の使い方がないからだよ。
応用の効く多様性のあるツールという利点なんだけど、自分たちの使い方だけが唯一の正解と思っているアホが多すぎる。 >>930
どうしたの?急に
何かつらいことでもあったの? まあ、Excelも難しいし、インターネッツも難しいよな
標準の使い方がないから ExcelもXML形式になったから
Gitで差分管理できるようになるといいなあ xlsxをzip展開した状態でリポジトリに入れればいいのかな VSCode の、Git の拡張機能で、差分表示できないの? >>930
同意。git自体はかなり使いやすいツールだと思う。
最近気になるのは若い連中がなぜかSIerみたいな運用を好むってところかな。
それやりたいならsvnでも使ってりゃいいのにと思う。 mergeまでにあほみたいな数の承認の山が必要な運用 まさかGitHubのコードレビュー機能が嫌だとかそういうレベルの話? >>934
コンフリクトしたときに手動マージする自信がないなぁ たにぐちまこと
Git+GitHub入門 #01:リポジトリーの作成とコミット
https://www.youtube.com/watch?v=_PyuylNk64o&list=PLh6V6_7fbbo_M3CqTeJvuXB08--fibyBu
YouTube に、分かりやすい動画がある リモート追跡ブランチは全コミットオブジェクトやファイルを含んでるの?
一部メタデータだけとかじゃなく?
つまりリモート追跡ブランチがリモートリポジトリの最新状態を反映していれば、
オフラインでもリモートリポジトリの最新状態を(リモート追跡ブランチから)ローカルリポジトリに反映できる? ローカルリポジトリじゃないな。
オフラインでもワークツリーにリモートリポジトリの最新状態を反映できるか? 1)リモートリポジトリ無しで自分のPCだけでgitを使っている場合、
リモート追跡ブランチは一切存在しない?
2)その場合、自分のローカルリポジトリからcloneすることは可能?
つまりGitは次々と拡散的にcloneしていけるものなんだろうか?
言い換えれば、リモートリポジトリなるものの正体は単に誰かのローカルリポジトリだろうか? 図の奴はmasterもmy-local-branchもローカルリポジトリのローカルブランチ
ローカルに作成してどこへも push してないローカルリポジトリには、リモート追跡ブランチは存在しない
ローカルリポジトリからcloneすることは可能で、次々と拡散的にcloneできる
しかし、一般的には、cloneやpush/pullだけする上流のリポジトリは、--bare オプションを付けて作成されていて、ワーキングツリーが存在せず、checkout とかできない
さらに、github みたいなサービス上に存在するリポジトリの実体はもっと違うものであってもいい 基本的なことでしたらすみません
マージしてpushしようとしたら、既にリモートのブランチが更新されてた場合ってどう対応してますか? >>956
fetchして、ブランチを全部表示すると、
自分のブランチとリモートブランチが枝分かれしてるから、
そのリモートブランチを持ってきて、自分のブランチにマージしてからコンフリクトを解消、改めてプッシュしたらいいのでは
それか、自分のブランチをリベースするか
(リモートブランチの先端に自分のブランチの変更をすべてチェリーピックするのと同等) >>957
自分も前者のやり方で対応してたのですが、
マージ先のブランチを更新する人が多く、pushするタイミングが難しくて質問してみました
リベースはやったことないので調べてみます pullしてそのままpushするだけでいいよ
履歴を綺麗に保ちたいならgit pull -rebase
時間のかかる大規模なマージのときは事前にコミュニケーションをとって不幸な競合をなるべく回避するように根回し
ひとつのブランチに対してコミットする人が多すぎるならブランチ運用の設計がまずいかもと相談する その状況だと、リベースとマージは同じだと思うよ。
pushするときに毎度マージが発生するのは仕方ないかもしれないけど、
それをマージしおわってpushしたらもう更新されてたっていうのなら、運用見直したほうがいいと思う。
調停する人置くとかしないとならんかな Masterって言葉は差別的らしい。
こういう流れを受けて、git 本体のMLでも議論されてる。
Rename offensive terminology (master)
https://public-inbox.org/git/bef39243-806f-7c4a-c3d1-f3500ec377be@iee.email/T/#t
というスレで議論されてる
うーん 主人も婦人も夫人も差別語だな
フェミ厨の出番だぞがんがれ メタリカのアルバム「Master Of Puppets」の邦題が「メタル・マスター」というのは、どう考えてもおかしい。 BLMの飛び火だろうか
ATA規格のmaster vs slaveが避けられるのはわかる
masterのあるじとしての語義は宜しくないんだろう
でもmaster copyのような原本としての語義までケチをつけるのはどうなのか
Master Yodaのような達人や先生の語義は言わずもがな
>>962
mistressも同じだからフェミ云々はお門違いだろ Masterを「原版」not主人の意味に定義すりゃ終わる話だな。
手間かけて修正するほどの話じゃない。
言い出しっぺはパッチ出したのかな? デフォルトのブランチ名の上書きのためのパッチが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 Github、人種差別を連想させるコーディング用語の見直しへ
https://www.gizmodo.jp/2020/06/github-to-remove-master-and-slave-coding-terms-widely-s.html
米GizmodoがGithub広報に確認したところ「3つの変化を起こすため、Gitプロジェクトや他のバージョン管理ベンダーと共に積極的に取り組んでいます」と詳細を明かしています。それによると3つの変化とは次の通り。
(1) 新規リポジトリでデフォルトのブランチ名を‘master’から変更する
(2) すべての新規リポジトリで、自分のデフォルトのブランチ名を簡単に選択できるようにする
(3) 既存リポジトリでデフォルトのブランチ名を変更する方法について、ユーザー向けのガイダンスやツールをリリースする
今回、見直されている用語は長い間批判されていましたが、GithubのほかPythonも非攻撃的な用語への切り替えに着手していること、
さらにGitlabが最初のイテレーションに取り組んでいて、ユーザーが自分のデフォルトのブランチ名を選択できるように動いていることを明かしています。 せめてエイリアスにしてくれ
こんなくだらない理由で改修とかバカバカしすぎる gitのブランチ名はmastet以外に好きに変えられるからいいとしても、デファクトスタンダードな用語をいまさら変えるなんて混乱が起きそうだ
これからmasterブランチのことをなんて呼んだらいいんだろう >>969
githubの話は別のスレでやってくれ >>973
パワハラでsubmoduleから提訴されるんですね rebase -i でコミット整理してる時、面倒なコンフリクトが大量に発生したら皆さんどうしてますか?
やっぱり手動で逐一解決しますかね? >>978
rebase中止して、conflict解消したcommitして全部sqash macOSの brew が鬼のような速さでgit更新に対応してた。 git公式がポリコレ機能アピールしててワロタwwwww
もうこの世界オワタwwwww https://raw.githubusercontent.com/git/git/master/Documentation/RelNotes/2.28.0.txt
The name of the primary branch in existing repositories, and the default name used for the first branch in newly created repositories, is made configurable,
so that we can eventually wean ourselves off of the hardcoded 'master'. コミット&プッシュしたとき
ローカルリポジトリ更新されて
リモートリポジトリでコンフリクトでエラーが出て止まったときって
プルしようにもローカルリポジトリでエラー出て
プッシュはもちろんできなくて
作業フォルダは>>>>>>>>>>文字列で
やられちゃってるじゃないですか?
一旦リモートリポジトリの全部とって
手動でマージしたいんですけど
なんとか前の状態に綺麗に戻せませんでしょうか? >>990
あ、やっぱりそのブランチは死んだと見るべきってことですね
回答ありがとうございました >>991
ブランチは死んでない、なぜならコミットしてるのだからそこまでは戻せる
pull(リモートとのmergeのこと)にconflictして失敗したのだから、ダメになったのは作業コピー 作業フォルダが>>>>>でやられてるという理解がまず変じゃない?
Gitが分かりやすく競合位置をマーキングしてくれてるだけの一般的な状態
そこから生でテキストを編集するのが怖いならGUIのツールを使えばいい
これができないと常に競合に怯えることになる ソース全体に無駄にフォーマッタをかけてしまって大量に競合した等、訳あってマージを取り消したいなら
git merge --abort
でマージ前に戻る
綺麗にpullしたいならさらに
git reset --hard HEAD^
でコミット前に戻してからpullして手動マージ マージコミットを作ってもいいなら
git checkout --theirs .
でリモートのファイル内容になる
git checkout .
だとローカルが優先されるんじゃないかな、間違ってたらすまん
どちらにしてもマージの仕組みを理解していない人がこれやると不味いミスをやらかすかも >>994
それって亀Gitやsourcetreeだとどういう操作になりますか? >>996
亀ならログを開いてマージ直前かコミット前のコミットを選んでリセット
リセットするときhardを選ぶ 不馴れならhardでマージ前に戻してからmixedでコミット直前の状態に戻して、自分がコミットしたときの編集内容をアナクロな手段で待避しておいた方が安心かもな >>997
ありがとうございます
@pushで失敗したときのローカルリポジトリのソースをエクスポートで退避
Aリセットhard
B一応プル
C@を手作業でマージ
Dcommit&push
って感じでやってみます!
今度コンフリクトしたら このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 1114日 11時間 27分 51秒 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php レス数が1000を超えています。これ以上書き込みはできません。