PyCharm上での、Gitに関する操作方法をまとめました。
対象者は
- Git、GitHubの操作方法は知っているが、PyCharm上からの操作は分からない
という方になります。
GUI上で、簡単に操作ができるようになります。
Mac上で解説していますが、Windows、Linuxにおいても、操作方法は同様になります。
また、Git自体の環境は構築済み、という前提で記載しております。
PyCharmの特徴を知りたい方は、当ブログの下記記事が参考になります。
併せて、どうぞ。

PyCharm上での、Git関連の操作方法
ローカルリポジトリの作成
コマンド「git init」 に相当する操作になります。
メニューから、「VCS → Create Git Repository」を選択

次に、ポップアップするウインドウがでてくるので、
- 現在のプロジェクトにいる事を確認
- 「Open」をクリック

これで、プロジェクトフォルダに、「.git」ファイルが作成されます。
ステージへの追加
コマンド「git add」 に相当する操作になります。
操作方法は、下記の二種類があります。
- ファイル作成時に設定する方法
- ファイル作成後に設定する方法
一度「ステージに追加」されたファイルは、上書き保存される度に、自動で「git add」されていきます。
ファイル作成時に追加設定
ファイル作成後、下記ウインドウがポップアップします。

「Add」を選択します。
Addしたファイルは、以下のように、ファイル名が緑色で表示されます。
(赤色表示は、ステージに追加されていないファイルになります。)

ファイル作成後に追加設定
- ステージに追加したいファイルを右クリック
- 「Git」 → 「Add」 をクリック

コミット
コマンド「git commit」 に相当する操作になります。
下記を選択します。

すると、下記ウインドウが表示されます。
下記を実施後、「Commit」をクリックします。
- commitするファイルの選択が正しいか?
- 変化点(git diff コマンドに相当)の確認
- commitメッセージを記入
- (git commit –amend 等の操作もGUIから可能)

コミット後の挙動
ここでは、
- test.py
- test2.py
をコミットする例を考えてみます。
下図のように、コミット後は、ファイル名が白文字で表示されます。

この状態で、test.py ファイルの中身を変更すると、ファイル名が青色になります。
青色のファイル名は、ステージに追加したファイルで、
・ 中身が変更されているが、commitされていない
事を意味します。

ブランチの作成
コマンド「git checkout -b (作りたいブランチ名)」 に相当する操作になります。
- プロジェクトツリーの、対象プロジェクトフォルダを右クリック
- 「GIt」を選択
- 「New Branch」 をクリック

次にポップアップするウインドウが出現するので、作りたいブランチ名を入力します。
ブランチの切替え
コマンド「git checkout (切替え先のブランチ名)」 に相当する操作になります。
現在、「master」ブランチにいる状態だとして、「test_branch(既に作成済み)」に切り替えるケースを考えてみます。
- プロジェクトツリーの、対象プロジェクトフォルダを右クリック
- 「GIt」を選択
- 「Branches」 をクリック

次に下記ウインドウが出現します。
- 切り替えたいブランチを選択
- 「Checkout」を選択

.gitignoreへの追加
- 追加したいファイル上で右クリック
- 「GIt」を選択
- 「Add to .gitignore」を選択
- 「Add to .gitignore」をクリック

.gitignoreに追加したファイルは、文字色が黄色になります。
GitHubにリポジトリを作成
GitHub上に、本プロジェクト名のリポジトリがない前提で記載します。
まずGitHubとの連携を設定します。
- メニューから、「Git」をクリック
- 「GitHub」を選択
- 「Share Project on GitHub」をクリック

下記ポップアップが表示されます。
- 「Add acccount」 をクリック
- GitHubとの連携方法を選択(JetBrain経由、もしくはTokenを使った方法等)
- 「Share」をクリック

これでGitHubにリポジトリが作成されます。
GitHubにpush
コマンド「git push <remote> <branch>」に相当する操作になります。
下記場所をクリックします。

下記ウインドウがポップアップするので、
- Push先のブランチ名
- Pushするファイル一覧
を確認した上、「Push」をクリックします。

GitHubからfetch → merge
Fetchの操作方法
コマンド「git fetch <remote>」に相当する操作になります。
- プロジェクトツリーの、対象プロジェクトフォルダを右クリック
- 「GIt」を選択
- 「Fetch」 をクリック

Mergeの操作方法
コマンド「git merge <remote/branch>」に相当する操作になります。
- プロジェクトツリーの、対象プロジェクトフォルダを右クリック
- 「GIt」を選択
- 「Merge」 をクリック

次に下記ウィンドウがポップアップします。
Mergeする元を聞いてくるので、確認後、Mergeをクリックします。

GitHubからpull
コマンド「git pull <remote> <branch>」に相当する操作になります。
- プロジェクトツリーの、対象プロジェクトフォルダを右クリック
- 「GIt」を選択
- 「Pull」 をクリック

次に下記ウィンドウがポップアップします。
Pullする元を聞いてくるので、確認後、「Pull」をクリックします。

学習に際して、おすすめ
Gitは操作だけでなく、実際に何が起こっているのかを理解する事が重要です。
なぜなら、つまずいた時に、ファイルが滅茶苦茶になってしまう可能性があるからです・・(リソース:筆者)
よく分からないまま、ネットで収集したコマンドを、適当に入力してしまいました・・・
GItの操作方法と、「裏側で何をしているか」を学習したい方は、下記の動画講座がお勧めです。
Git: もう怖くないGit!チーム開発で必要なGitを完全マスター
※ 上記はUdemyへのリンクとなっています。頻繁に割引キャンペーンを実施しているので、その利用をお勧めします。
具体的には、
- Gitの各操作の裏側でどのような処理がされているか、イメージを使って説明
- 頻繁に使うものに絞った、具体的な処理方法の習得
- GitHubも用いた、チームでの共同開発
等、幅広く学習する事ができます。
筆者も、Gitの仕組みを分からず使っていたため、こちらで勉強させて頂きました。
ありがとうございます。
まとめ
Git操作関係で、頻繁に使用する操作をピックアップしてご紹介しました。
ここまで操作されてきた方は、
- Stash
- Rebase
- Tag
等もできるようになると思います。(本記事に沿って操作をした方は、該当する項目が、途中で目に入ったかと思います。)
それでは、またお会いしましょう。