Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

PhpStorm(たぶん IntelliJ 系列) で Partial Commit(ファイルのうち一部だけをコミット) 出来る!

More than 1 year has passed since last update.

PhpStorm(たぶん IntelliJ 系列) で Partial Commit 出来る!

恥ずかしながら先程まで知りませんでした!

https://blog.jetbrains.com/idea/2018/02/intellij-idea-2018-1-eap-partial-git-commits-and-more/

PhpStorm(たぶん IntelliJ 系列) Partial Commit が可能なんです。

これはズボラな人間としては大いに活用せねば!

どういう時に便利か

ある程度実装してくうちに、特定のファイル(達)に Commit しようとしてる意図とは違う軽微な修正を入れてしまうケースがあります。

例えば、 SomeController.php というファイルに対して作業をしていて、偶然 typo を見つけたとします。

でも、既に SomeController.php は修正が入っていて、発見した typo と一緒にコミットするとコミットログ的に良くないと考える。

そうなると、先に実装箇所を Commit して、その後で typo を修正することになるわけですが、まぁ、忘れたり Commit したけど、本筋の方に戻ったりという状況が発生しがちなわけです。

そこで、コミット時に特定の修正だけコミット出来たらいいのになーと思うわけです。

で、今日はなぜかググって見たわけです。 phpstorm partial commit って。

そしたら、前述の https://blog.jetbrains.com/idea/2018/02/intellij-idea-2018-1-eap-partial-git-commits-and-more/ を発見したわけですよ!すごい!

やり方

例えば、 Project Tree (等: favs からとかでも OK)から、対象のファイル達を選択した状態で cmd + shift + a から何でも検索を呼び出して、 現れる入力欄におもむろに git 入力し、最初に表示されるであろう Commit File... をそのままキーボードのエンターから選択します。

※他にも cmd + k で、影響のあるファイルに対する Commit Window を表示する方法もあります。

で、表示された Window 上部で、まず、 Partial Commit したいファイルにチェックを入れます。

※もし、 Project Tree から選択していた場合既に選択済みのはずです。

で、次。

画面下方の Your version の行番号の箇所にチェックボックスがあるはずです!

スクリーンショット 2018-12-20 5.02.26.png

このチェック、デフォルトで全てにチェックが入っているはずですが、今回のコミット作業で除外したい箇所のチェックを外すと、チェックが入っている場所だけがコミットされます!

便利!

例えば、先の例だと、 fix typo. というコミットに対して、該当箇所だけにチェックを入れて先にコミットしておく、なんて事ができたりします。

もちろん、チェックを入れてない箇所は未コミット状態として残ります。

これは捗る!

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away