- 105 名前:デフォルトの名無しさん mailto:sage [2022/11/12(土) 06:57:39.26 ID:h41UD2lS0.net]
- >>97
(わざわざ色々考えてくれたのなら手間かけてすまんが) 正直全く分からんし、俺はstashも糞仕様と思うから使う気ない。 というか、Gitの連中、「仕様は小さくあるべき」という感覚がそもそも無いと思う。 俺だったら、branchなんて、各ディレクトリにそのままマッピングする。 つまり、sample.txtの開発なら、 .git master/sample.txt develop/sample.txt featureXXX/sample.txt stash/sample.txt で、実行パスは xxxx/current/sample.txt としておいて、 ブランチの切換はcd、実行ブランチの切換は ln -s master current でよかった。 stashなんて不要機能そのものだよ。直感的じゃないし、そこまでGit信じ切れないし。 この馬鹿仕様で git add -A で取ってれば各ブランチの同時開発状況含めて完全にcommit履歴が保持出来る。これで十分だ。 Gitによってカレントディレクトリの内容が「上書き」されるのはかなり気持ち悪い。 zip展開するときと同様、バケツからは明示的に取り出さないと上書きされない、が分かりやすくて良いんだよ。 branch切換で全部上書きで入れ替わるのは、頻繁に過去と現在を往復するにはいい仕様だが、普通の人には要らん。 というわけでGitBucketは基本この方針でmasterに全ての履歴を数珠繋ぎ、 平行開発はディレクトリとシンボリックリンクで手動でやれ、 git branch xxxx で切り替えれば勿論切り替わるが、バックアップはその状態で取るのであしからず、 それが嫌なら一々masterに手動で戻せ、(自動戻しは失敗するときがあるので付けない) だから戻し忘れたら一見ちぐはぐになるが、どのみち何処かに残ってるからなんとか探し出せ、という仕様。 要するにGitBucketはbranchを無視する。 (現在のbranchの記録はしておく。これでbranchを使う人も使わない人も問題ない)
|

|