GitやGitHubをClaude Code経由で使う:リポジトリ作成からコンフリクト解決まで
安野貴博の自由研究バイブコーディング超入門講座の第6回で、安野貴博氏はGitとGitHubの基本操作を実演した。コマンドを自分で打つのではなく、Claude Codeに日本語で頼みながら進めるのがこの回のやり方である。安野氏の立場は、「コミット」「プッシュ」といった単語さえ知っていれば、Claude Codeを通してGitやGitHubは使える、というものだ。画面上で氏がしているのは、話しかけて、Claude Codeの作業を確認し、許可ボタンを押すことだけだった。
GitHubで新しいリポジトリを作る
実演はブラウザでGitHubにアクセスするところから始まる。ログインすれば各種機能が使える。安野氏によれば、GitHubはまだ英語にしか対応していないのでハードルが高く見えるかもしれないが、自動翻訳機能なども使いながら挑戦してほしいという。
最初にリポジトリを作る。安野氏はリポジトリを「ソースコードを入れておくための箱のようなもの」と説明し、GitやGitHubでは基本的にリポジトリ単位で作業を進めると述べた。リポジトリ名は「YouTubeテスト」とし、説明文(Description)にはこのリポジトリが何なのかを書く。
公開範囲(Visibility)には、パブリックとプライベートがある。パブリックにすると全世界に公開される。プライベートなら自分と、GitHub上で招待した人にしか見えない。安野氏は、最初からパブリックにすると公開してはいけないものが公開されてしまう事故が多いとして、よく分からないまま始める人にはまずプライベートを勧めた。その他の設定項目は上級者向けとして今回は触れていない。
「Create repository」を押すと、氏のユーザー名 takahiroanno の下にプライベートリポジトリができた。英語の説明がいろいろ表示されるが、まず見るべきは「Quick setup」の欄である。ここに書かれた文字列をコピーボタンでコピーし、Claude Codeに移る。
Claude Codeにリポジトリを手元へ持ってこさせる
Claude Codeには、コピーした文字列を貼り付けたうえで、「このリポジトリをGitHubで作ったので、手元のパソコンに持ってきてください」と頼む。安野氏によれば、Gitがきちんとインストールされていれば、あとはClaude Codeが自動でリポジトリを手元に持ってくる。
途中で、Bashコマンドを実行してよいかの確認が出る。安野氏は、ここで使われているのは一般的な方法なので「はい」を押してよいと説明した。これでリポジトリと同じ名前のフォルダが手元にでき、以降の開発はここで行う。
最初のファイルを作り、コミットする
次に安野氏は、「README.mdという名前のファイルを作って、『最初のセーブポイントを作るよ、コミットをするよ』と書いてください」と頼んだ。Claude Codeは作成するファイル名と内容を提示し、氏は内容を確認して許可した。
ここで「今のブランチの状況はどうなっていますか」と質問する。この指示は音声入力で出している。Claude Codeの回答は次のとおりだった。手元のmainブランチにいる。コミットはまだ1つもない。README.mdは作ったが、まだセーブされていない。リモートブランチもまだ空である。安野氏はリモートブランチを「GitHub上にあるリポジトリの状態」と補足した。
README.mdについては、リポジトリがどういうものかを伝えるため最初に読まれる「私を読んで」というファイルであり、GitHub上のさまざまなリポジトリにある、と説明した。
続けて「今のREADMEファイルをコミットして」と頼むと、コミットが完了した。画面にはコミットハッシュやメッセージ、ワーキングツリーといった言葉も出てきたが、安野氏はこれらを中級者向けとして脇に置き、「まずコミットが完了したこと」が大事だとした。
音声入力には「アクア」というツールを使っているという。コマンドキーを押しながら話すと、その部分だけが反映される仕組みで、安野氏は非常に便利だと評価している。
2つ目のセーブポイントと履歴の確認
もう1つファイルを作る。「メモというファイルを作って、『今日は2026年の5月です』と書いてください」と頼み、続けて「今の状態をコミットして」と指示した。これで2つ目のセーブポイントができた。
「今までに入ったコミットを見せて」と頼むと、Claude Codeは2つのコミットを示した。1つ目がREADME.mdの作成、2つ目がメモファイルの作成で、想定どおりの結果である。
mainで作業していたためプルリクエストが作れない
次に安野氏は、「この2つの今の状態をプッシュしてほしい。そのときにGitHubのmainに対してプルリクエストを出してほしい」と、プッシュとプルリクエストを一度に頼んだ。
Claude Codeはここで問題を指摘した。手元で作業しているのはmainブランチで、GitHub上にもmainブランチしかない。同じ名前のブランチからmainに向けてプルリクエストを出すことになるので、プルリクエストは作れない。プルリクエストを出すには別の対応が必要だ、という内容である。安野氏はこれを「いい指摘」と受け止め、最初にmainではなくブランチを切ってから作業を始めるべきだったと振り返った。
Claude Codeがどちらの対応にするか尋ねてきたので、安野氏は別ブランチを作ったことにして、2つのセーブポイントをそちらへ移す方法を選んだ。その結果、mainブランチと「initial-files」(最初のファイルを入れるブランチ)の2つができ、両方をプッシュしてプルリクエストを作成する流れになった。
この場面について安野氏は、自分で説明していても正直難しいことをやっていると認めている。そのうえで、難しい部分はClaude Codeがかなりうまく処理してくれるので、作業を始められるようになれば、「コミットして」「プッシュして」「プルリクエストを送って」「プルしてきて」とどんどん頼んでいけばよいと述べた。そうしているうちに、Gitがどういうものか分かってくるという。
GitHub上でプルリクエストを確認してマージする
GitHubに戻ると、Pull requestsに「1」と表示されていた。開くと「READMEを追加し、メモファイルを追加した」という内容になっている。「Files changed」を見ると、README.mdに「最初のセーブポイントを作るよ、コミットするよ」、メモに「今日は2026年の5月です」と書かれていることが確認できる。
内容を見て「これがやりたかった」と判断したら「Merge pull request」を押す。これでブランチ上の2つのセーブポイントがGitHub上のmainの記録に取り込まれ、表示が紫色の「Merged」に変わった。安野氏はこれを「mainの歴史が作られた」と表現した。
トップページのCodeタブには、README.mdとメモの2ファイルが並んでいる。README.mdはGitHub上で特別扱いされるファイルで、その内容がページ下部に表示される。
4月ブランチと6月ブランチでわざと衝突を作る
後半のテーマは、たとえば安野さんと山田さんが別々のプルリクエストを送り、内容がぶつかった場合、つまりコンフリクトが起きた場合の対処である。
まず新機能用のブランチを切る。安野氏は、先ほどのマージでGitHub上と手元の状態が食い違っているはずだと考え、「まずプルして状況を合わせてから、『4月』という名前のブランチを切ってください」と頼んだ。Claude Codeはmainをプルしてマージ後の最新状態に同期し、4月ブランチを作って移動した。安野氏は、日本語のブランチ名も作れるようになっていることに触れている。
4月ブランチでは、あえて「嘘」の変更を入れる。「メモに2026年5月と書いてあると思うが、それを2026年4月にしてください」と頼み、変更を確認してからコミットし、「2026年4月にする機能」としてプルリクエストを出させた。
このプルリクエストはすぐにマージせず、別の嘘を加える。「別の機能を作りたいので、4月ブランチのことは一度忘れて、mainをもとに『6月』というブランチを作ってください」と頼み、6月ブランチでメモを「今日は2026年の6月です」に書き換えた。こうして4月方向と6月方向に分岐した2つのブランチができ、両方についてプルリクエストを出した。
GitHub上で起きたコンフリクト
GitHubには「2026年4月になる機能」と「2026年6月になる機能」の2つのプルリクエストが並んだ。安野氏は、これらは真っ向からぶつかる機能で、「今何月やねん」と分からなくなると説明した。
先に4月のプルリクエストを開く。Files changedでは、赤が変更前、緑が変更後として、5月から4月への変更が示されている。これをマージすると、Codeタブのメモは「今日は2026年4月です」になった。
続いて6月のプルリクエストを開くと、5月から6月への変更が表示されるが、マージができない。英語の表示は、マージがブロックされている、マージの要件を満たしていない、というものだった。「This branch has conflicts that must be resolved」、つまり解決しなければならないコンフリクトがあるという意味である。
「Resolve conflicts」を押すと矛盾している箇所が表示される。mainでは4月、このブランチでは6月と書かれている、という状態だ。安野氏によれば、今回は1行だけなので単純だが、実際にさまざまな機能を開発していると、何行にもわたる食い違いが発生し、もっと大きなコンフリクトになることがある。GitHub上でも解決できるが、今回はClaude Codeで解決する。
Claude Codeでコンフリクトを解決する
プルリクエストには番号が振られている。安野氏は背番号のようなものと説明した。ここでは3番目が6月のプルリクエストだった。安野氏は「3番のプルリクエストをマージしようとしたらコンフリクトが発生していたので、解決したい。どうしたらいいですか」と尋ねた。コンフリクトが起きたらClaude Codeに何とかしてくれと頼む、基本的には「Claude Codeに頼みまくる人生」だ、というのが氏の言い方である。
Claude Codeは原因を説明した。先に4月がマージされたうえで、6月ブランチが元の5月を6月に変えているため、同じ行で衝突している。解決手順としては、手元の6月ブランチに最新のmainを取り込み、コンフリクトを解決してからプッシュすることを提案した。安野氏はこれを、自分のパソコンの中で一度解決し、その結果を3番のプルリクエストにプッシュするという意味だと言い換え、基本的に提案に従って進めた。
Claude Codeは解決方法として、マージとリベースの2つを示した。安野氏は、セーブポイントを編集する方法にはいろいろあり、これは上級者向けの話で流派もあると述べたうえで、ひとまずマージでよいとした。
取り込みの結果、コンフリクトが発生し、Claude Codeはメモの中身を示した。そして「このブランチは6月の機能なので、6月を採用してマーカーを取り除きます」と提案してきた。安野氏はここで、4月か6月かは最終的に人間が選ぶ必要があると強調した。Claude Codeにはどちらが正しいか分からないからである。自分が作ってきた機能に誤りがあったと気づいたら「ノー」と言えばよい。実演では提案を断り、「今は4月だったことに気づいたので、このコンフリクトでは4月を正しいことにして」と指示した。
Claude Codeは4月を採用し、差分では6月の行が赤く、消える行として表示された。「今日は2026年4月です」が残る形でコンフリクトが解決され、プッシュまで完了した。Claude Codeはこれでマージ可能になっているはずだと報告した。
まとめとして示された一連の流れ
安野氏は、今回はこれまでの超入門講座と比べて難しい内容が多かったと認めている。最初に覚える操作を5つに絞っているが、それでも大変だろうとし、実際に使い倒しながら、分からないことが出るたびにClaude Codeに聞いて、少しずつGitに慣れてほしいと述べた。
氏が整理したGitとGitHubの役割はこうだ。手元で保存し、クラウドのGitHubに上げる。GitHubの内容はWebに公開することもできる(これは今後の回で扱うという)。作業の流れは次のとおりである。ブランチを切って、どの機能を作るかという方向を決める。作業しながらコミットを重ねる。それをGitHubにプッシュしてプルリクエストを出す。内容を確認して、GitHub上のmainブランチに取り込む。次に作業するときは、取り込まれた内容をプルで手元に持ってきてから始める。安野氏は、この流れができるようになると、できることが大きく広がると述べている。
最後に氏は、以前はこうしたコマンドを全部自分の手で打たなければならなかったと振り返った。実演中にClaude Codeが実行していた「git add」やcommitなどのコマンドがそれにあたる。今はClaude Codeがすべてやってくれるので、超入門段階の人はまずClaude Codeに任せるところから始め、そのうちClaude Codeが何をしているのか分かるようになればよい、というのがこの回の結論だった。
まずやるべきなのはここのですね、クイックセットアップというとこですね。勝手にClaude CodeがGitを手元に持ってくると思います。ただ喋ってやってることを確認してポチッと押してるだけです。コミットしてとかプッシュしてとかそういう単語を知ってればGit・GitHubをClaude Code越しに使うことはできます。で、メモファイルを追加しましたと。内容は2026年の5月ですと。はい。
ということで実際に色々やってみたいと思います。まずですね、今この画面ブラウザーを開いておりまして、まずそこでGitHubというサイトにアクセスをしています。ログイン必要なんですけど、ログインしたら色々使えるようになると思います。確かね、GitHubはまだ英語しか対応していないということで、ちょっとハードル高いように見えるかもしれませんが、ちょっとね、自動翻訳機能とか使いながら頑張って使ってみてください。
で、まず新しいリポジトリを作るということから始めます。ここね、Create new repositoryって書いてありますけれども、リポジトリっていうのは1つそのソースコードを入れておくための箱みたいなものになってます。で、GitとかGitHubっていうのは基本的にはこのリポジトリ単位で物事を進めていきます。
ということでまず最初リポジトリ名を決めないといけないんですが、Git YouTubeテストとかにしておきましょう。で、Descriptionはこのリポジトリって何なのっていう話で、Visibilityっていうのはですね、パブリックだったりプライベートだったりするわけですが、パブリックにするとこれ全世界に公開されます。で、プライベートにすると自分にしか見れない。あるいはGitHub上で招待した他の人にしか見えないっていう感じになります。
まあ、なんかね、1番最初はパブリックにすると事故ることも多いので、なんか公開されちゃいけないものが公開されちゃうこともあるので、一旦まずバイブコーディング入門のあんまりよく分かってないよという中でやる人にはまずプライベートにすることをお勧めします。
で、ここら辺はですね、ちょっと上級者向けなので一旦置いときましょう。で、Create repository押します。ポチ。で、こうすると新しいリポジトリができまして、takahiroanno、これ私のユーザー名ですけど、takahiroannoの下にYouTubeテストっていうプライベートのリポジトリができました。
で、ここに色々英語が並んでます。英語が並んでますが、まずやるべきなのはここのですね、クイックセットアップというとこですね。クイックセットアップというところに、ちょうどこの文字が色々書かれているので、これをコピーすると、これコピーボタンですね、コピーするということを押してみてください。で、ここからですね、コマンドの方に移っていきたいと思います。
はい、ということでClaude Codeに移りました。さて、先ほどGitHubでコピペしたものあると思いますが、それをですね、ここに貼ってみて、このリポジトリをGitHubで作ったので、これを手元のパソコンに持ってきてください。こんな感じで言ってみてください。多分ね、Gitがしっかりとインストールされていれば勝手にClaude CodeがGitを手元に持ってくると思います。
で、今Bashコマンド、こういうコマンド打っていいかいというのを聞かれてますが、ここのcloneというやり方は一般的なやり方なので、これははいと押していただくといいと思います。で、そうするとこのリポジトリの名前と同じものが新しくリポジトリができたので、ここで開発をしていきたいと思います。
まず最初にテキストファイルを作ってください。README.mdという名前のファイルを作って、最初のセーブポイントを作るよ、コミットをするよと書いてください。こんな感じでやっていきましょう。
そうするとClaude Codeはファイルを作りたいと、YouTubeテストの中にREADME.mdを作ろうということを言ってます。で、この中に最初のセーブポイント作るよ、コミットするよっていうことを書いてくれているので良さそうだと思ってポチっとやりました。で、そうすると作成しました、内容は以下の通りですということが出てきました。素晴らしい。
じゃ、いくつかClaudeと喋ってみましょう。まずブランチを切るっていう話をさっきやりましたけど、今のブランチの状況どうなってるのかを聞いてみましょう。今のブランチの状況ってどうなってますか?はい。ちなみにね、これ音声入力でやっております。
で、今のブランチの状況はどうなってるかと言うと、ブランチメインにいますと、今のパソコンの中のメインにいますよと。で、コミットまだ1つもありませんと。だからセーブポイント、まだ作ったばっかりなので、まだ1回もないですよと。で、ファイルとしてはREADME.mdというものを作りました。で、これは、まだセーブされてないで、リモートブランチ、リモートブランチっていうのがGitHub上にあるリポジトリの状態っていうことなんですけれども、これまだ空ですという感じです。
じゃあ最初のセーブポイント作ってみましょう。ちなみに今ね、作ったREADME.mdってどういうものかって言うと、これもよくある話なんですけれども、リポジトリがどういうものなのかっていうのを分かりやすく伝える、まず最初に見るファイルっていうのがREADME、私を読んでっていうファイルだったりしますので、いろんなね、GitHub上のいろんなリポジトリ見ていただくと分かるんですが、READMEと呼ばれるファイルがあることは非常に多いです。じゃ、このREADMEをコミットしてもらいましょう。今のREADMEファイルをコミットして、
ちなみにね、私はアクアっていう音声入力のやつを使ってますが、めっちゃ便利です。コマンドキーを押しながら喋るとその部分だけが反映されてくれるみたいな感じになってます。
はい。ということでコミット完了しましたと書いてあります。コミットハッシュとかメッセージとか変更とかは、これまだ中級者向けの話なので一旦置いといていただいて大丈夫です。ワーキングツリーとかね、いろんなワードが出てますけれども、まずコミットが完了したっていうこれが大事です。
じゃ、コミット完了したということでもう1個くらいじゃあ別のファイルを作ってみましょうか。メモというファイルを作って、その中に今日は2026年の5月ですと書いてください。こんな感じで他のメモも追加してみましょう。
で、メモファイルを追加しましたと。内容は2026年の5月ですということなので、これもコミットしてみましょう。今の状態をコミットして、これセーブポイント2つ目ですね。
はい。というわけでコミットが完了しました。じゃあ今まであったコミットどんな感じなのかというの見てみましょう。今までに入ったコミットがどんな感じか見せて。セーブポイント2つあるはずなので2つセーブポイントがあるよっていうのが出てくるはずです。で、出てきた、今までに入れたコミットはこの2つですと。で、1番最初は、README.mdを作りましたと。で、次にメモっていうファイル作りましたということになっています。
じゃあ、次にですね、これをプッシュしてみましょう。この2つの今の状態をプッシュして欲しい。で、その時にGitHubのメインに対してプルリクエスト出して欲しい。さっき言ったプッシュしてプルリクエスト出すっていうのを両方やってみたいと思います。で、今ね、考えていただいていますね。
で、これはね、いい指摘で、何を言われたかと言うと、今メインブランチというところで作業してるんです。自分のパソコンの上で。で、リモートのGitHub上にもメインブランチしかないんです。で、これ名前が一緒なんですけれども、この名前が一緒のブランチだとメインから同じブランチに対してプルリクを出すことになってしまうので、プルリクは作れませんと。なのでプルリク出すには別の対応が必要ですよということになります。で、最初ですね、僕がこのパソコンで作業する時にメインブランチじゃなくてちゃんとブランチを切って安野の機能をつけますって言ってやり始めればよかったんですが、メイン上で作業しちゃったためにこれが起きてます。で、どっちにしますかって書いてあるので、とりあえず別ブランチ、安野のブランチを作ったことにして、そこで、さっきの2つのセーブポイントを安野のブランチ上に移して、それをですね、やってみたいと思いますね。
このね、結構自分で喋ってても思うんですけど、結構難しいっすよね、これね。正直色々難しいことやってるんですけど、難しいことはかなりClaude Codeがいい感じにしてくれるんで、1回こう作業をやり始められるようになったらそんなに気にせずに、Claude Codeにコミットしてプッシュしてプルリクエスト送ってプルしてきてって、どんどんどんどん言ってくだけで、なんかいい感じになってきます。いい感じにこう色々やってるうちに、あ、Gitってこんな感じなんだなって分かってくると思います。
はい、ということでClaude Codeが色々と移す作業をしてくれてますね。で、ブランチの構成ができましたと。で、メインのブランチと今initial-filesっていう、最初のファイルを入れるよっていうブランチが両方できました。で、まず両方のブランチをプッシュしてプルリクを作っていきましょうと言ってるのでお願いしたいと思います。
はい、次プッシュしましたと。プッシュ完了しました。最後にプルリクエスト作りますということでプルリクエスト作っていただきましょうね。皆さん分かると思いますけれども、今私はですね、めちゃめちゃただ喋ってやってることを確認してポチっと押してるだけです。で、その時にコミットしてとかプッシュしてとかそういう単語を知ってればGitHubをClaude Code越しに使うことはできます。はい。ということでプルリクエストが無事作成されたということです。これ見てみましょう。
はい。ということでGitHub上に戻ってきました。で、GitHub戻ってくるとここにですね、Pull requestsが1っていうのが付いてます。ちょっとこれ見てみましょう。見てみるとじゃん、こんな感じになってまして、私がですね、READMEを追加してメモファイルを追加したっていう風に出てきています。で、これFiles changed、どんなファイルがどう変わったのって見てみると、こんな感じで示されておりまして、README.mdの中にこういう最初のセーブポイント作るよ、コミットするよって書いてあって、2つ目のメモっていうところにこう今日は2026年の5月ですって書いてあります。
で、この2つに対して、あ、いいねと、あ、これをやりたかったんだよということで、Merge pull requestというのをやると、無事にですね、安野ブランチでやったこの2つのセーブポイントが、GitHub上のメインの記録の中にこう入れ込むことができるようになっています。今紫色、Mergedとなりましたけど、こうすることによってメインの歴史が作られました。
作られてトップページのCodeと書いてあるところ見てみるとこんな感じで出てきています。このGit YouTubeテストというリポジトリの中にはファイルが2つあってREADME.mdとあとはメモというものがあります。で、README.mdはこれGitHub上でもちょっと特別扱いされるファイルになってまして、ここにですねREADMEの内容が出てくるようになってます。最初のセーブポイント作るよ、コミットするよってのが書いてあります。さっき入力した形ですね。こんな感じでGitHubのプルリクエストを出すということまでできました。
じゃ、次に安野さんと山田さんが別々のプルリクエストを送った時にどうなるか、コンフリクトが起きた時にどうするかっていうのをやっていきたいと思います。
まず新しい機能を作るためにブランチを切るというのをやってみましょうか。新しい機能を作るためにブランチを切りたいと思います。4月という、4月と書いて4月という意味のブランチを切ってください。で、さっきね、プルリクエストを1個したので多分GitHub上の状況とローカルの状況がちょっと食い違ってるので、まずプルをしてきて、状況を合わせた上で新しくブランチを切ってください。こんな感じで切ってみましょう。
これ4月、checkout 4月って書いてあるけど日本語のブランチ名も作れるんですね、もう。はい。4月ブランチに移りました。まずメインをプルしてきてGitHubの最新状態、マージコミットの状況に同期しましたと。そっから新しいブランチ4月を切って現在そのブランチにいます。はい。素晴らしい。
じゃ4月ブランチで何するかと言うと、ちょっと嘘を言ってみたいと思います。メモっていうファイルがあると思ってて、今2026年5月って書いてあると思うんだけど、それを2026年4月にしてみてください。ということで、さっき今2026年5月ですって書きましたけど、それ4月にしてみましょう。
はい。そうすると、こういう編集するよと出てきたのでオッケー、オッケーということで、変更しました。コミットしますかって聞かれてるんで、はい、コミットしてください。こういう風にお願いをしてみます。
はい、コミット完了ですと。じゃあこれを2026年4月にする機能ですという形でプルリクエストを出してください。今ね、セーブポイント1個作ったので、コミットしたのでそれをプルリクエストにしてくださいということでやってもらいましょう。
はい、プルリクエスト作成しましたということで2026年4月になる機能っていうプルリクエスト1個出しました。で、ここでまずプルリクエストのマージをすぐするのではなくて、次にもう1個ですね、別の嘘をついてみたいと思います。別の機能を作りたいので、1回4月のブランチのことは忘れて、メインのブランチを元にですね、6月というブランチを作ってください。
ということで、6月ブランチをね、作ってみたいと思います。さっきね、4月っていう方向に分岐したブランチと6月っていう方向に分岐したブランチのこの2つ別々に作ってみたいと思います。はい。はい、6月ブランチ作成しました。今ここって書いてありますけれども、今ですね、ブランチは4月というブランチと6月というブランチの2つがあります。じゃ、この6月というブランチでもメモを変えてみましょう。メモファイルの中に今日は2026年の6月ですと書いてください。
ほい。ということで、今度は6月にしてみました。で、この時にですね、2つのブランチがあって、プルリクエスト両方出しましょうか。お願いします。
完了です。ということで、2つのプルリクエストができました。じゃあ、GitHub上に戻ってみたいと思います。
はい。GitHub戻ってきました。そうするとプルリクエスト2つ出てます。どんなものが出てるかと言うと、2026年4月になる機能と2026年6月になる機能、これ2つ出てます。で、これはもう真っ向からぶつかる機能なんですよね。今何月やねんということが分かんなくなる機能です。
で、これ順番に見ていきましょう。まず4月になる機能ですが、Files changedとされてるのはメモというファイルが、こういう風に変わったよねと、5月から4月になったよねと。赤いのがビフォーで変更前のもので緑色が変更後のものになっています。で、これをじゃあマージしてみようということでマージをしてみるとこんな感じになってまして、よいしょ。このですね、Codeのを見ると、メモ見てみましょう。2026年4月のプルリクエストをマージしたので、今日は2026年4月ですと出てくるようになっています。じゃあ次6月になる機能入れてみましょう。
で、そうするとですね、この6月になる機能をこれを見てみると5月ですという内容から6月ですという内容にビフォーアフターとなってるわけですけれども、こちらですね。なんとマージをしようとしてもマージできなくなってます。英語を見てみるとですね、マージはブロックされてるよと。なんでならマージの要件満たしてないと言われます。残念ながらマージできませんと。で、ここにですね、This branch has conflicts that must be resolvedっていう、解決しないといけないコンフリクトが発生してますよということを言われてます。
やばいと、4月なのか6月なのか衝突しますという感じなんですが、これですね、Resolve conflictsというものを押すと、ここの部分が矛盾してますよってのが出てきます。今のメインでは、メインブランチの上では4月と書いてあるけど、あなたのブランチでは6月と書いてありますと。これどうしようっていう感じですね。今はもうこれ1行だけなんでそんなに複雑じゃないんですけれども、実際にいろんな機能開発してるともうね何行もの食い違いみたいなのが発生してきて、より大きなコンフリクトになることがあります。
でこれをですね、やり方なんですが、このね、GitHub上からも解決できるんですけれども、もうちょっとClaude Codeを使ってやってみたいと思います。
はい。ということでClaude Code戻ってきて作業したいと思います。で、プルリクエストって数字がついてます。背番号みたいなものがあって、さっき2番目のプルリクエストまでして、3番目のプルリクエストが6月のもので、ここでコンフリクトが発生していました。で、これをですね、3番のプルリクエストでコンフリクトが発生してるよというのを伝えたいと思います。3番のプルリクエストをマージしようと思ったらコンフリクトが発生していたので、これ解決したいと思ってます。どうしたらいいですか?こんな感じでね、コンフリクトが発生しているからなんとかしてくれっていうのをClaude Codeに頼む。もう基本的にはClaude Codeに頼みまくる人生です。
はい。で、そうするとこんな感じでですね、先に4月がマージされて、で、元の5月を6月に変えるので同じ行で衝突をしてますと。解決手順としてはローカルで6月ブランチに最新のメインを取り込んでコンフリクトを解決してからプッシュしましょうと。これつまり自分のパソコンの中で一旦解決して、解決したものをさっきの3番のプルリクエストのところにプッシュしていきましょうっていうことを提案されています。それで、基本的に従っていこうじゃないですかという感じなんですが、
で、マージしようとした時にどうなるか状況が確認できましたと。で、解決方法2つあるよっていうのを示してくれようとしてますね。このコンフリクトした時に、結局4月にするか6月にするか人間が選ばないといけないわけです。Gitはどっちが正しいかわかんないんで人間が判断してあげる必要があるんですが、と言った時に解決2つありますの、ちょっとねこれ上級者向けの話が出てきましたが、セーブポイントを編集する方法も色々あります。色々あってマージっていうやり方とリベースっていうやり方の2つがあるんですけれども、一旦ですね、マージというやり方でいいと思います。これはいろんな流派がありますね。
で、まずorigin main、origin mainというかですね。はい。コンフリクト発生しましたと言われていて、メモの中はこんな状態ですと。この時にこのブランチは6月の機能なので、6月を採用して、マーカーを取り除きますと書いてあってですね、最終的にコンフリクトなしにしようぜということを言っています。
で、その時に、いや、今4月だったなと思い返す時がありますね。自分が作ってきた機能は間違いあったなっていうのを気づいたらそれをノーと言ってあげましょう。ノーと言って、いや今は4月だったことに気づいたので、このコンフリクトでは4月を正しいことにしてって言います。
で、4月採用しますと言われたんで、じゃあ4月にしてみましょう。このね、赤いラインが消えるラインですね。なので今日は2026年4月ですっていうところが残るようになっております。
で、コンフリクト解決してプッシュしましたと。プッシュをしたということでマージ可能になってるはずです。これでオッケーですか?という感じで今コンフリクトが解決されました。
はい。ということで、ここまで喋ってきましたが、結構ね、今までの超入門講座に比べるとちょっと難しい内容が多かったかなと思います。覚えることもね、最初5操作だけにしてますけど、5つ覚えるのも結構大変だと思いますが、是非ですね、実際に使い倒しながら、1個1個わかんないことがあったらClaude Codeに聞きつつ、なんとなくGitに慣れていただければなと思います。
ということで、ちょっとまとめをするとGit、GitHubってこういうものだよということをお話ししました。手元で保存してクラウドのGitHubにあげて、それを、これは後々話しますけれども、GitHubの中にある内容っていうのはWebに公開できるものなので、そんな感じでパソコンの中で操作してクラウドに上げてそれ公開するっていうことができるようになるよと。
で、そのやり方としてはまずブランチを切ってこの機能を作るぞというこの方向を決めて、で、どんどんどんどん作業しながらコミットをしていきましょうと。セーブポイントを積み重ねていって、それをGitHub上にプッシュしてプルリクエストを出してもらいます。で、プルリクエスト出てきたら、これをポチポチと、あ、これでいいね、これでいいねっていうので、どんどんどんどんGitHub上のメインのブランチに取り込んでいきます。で、取り込まれたものをじゃあ次の作業する時にはプルで自分のパソコンのところに持ってきてから作業をするって、このね、一連の流れをできるようになると、非常にできること広がっていくと思いますので、是非ぜひ頑張ってやってみていただければと思います。
昔はこのコマンドっていうのは自分で手で全部打たないといけなかったわけですね。さっきClaude Codeがこのコマンド打ちますっていう形でgitなんとか、git addとかcommitとかですね、色々打ってましたけれども、これをですね打ってたわけですよ。でもClaude Codeが今は全部やってくれるようになってるので、バイブコーディングを超入門している皆さん的にはですね、まずはClaude Codeに任せてみるっていうところから始めて、でそのうちですね、Claude Codeが何やってるのか分かるようになってくるといいと思います。
はい。ということで長くなりましたが本日はGit・GitHub講座でした。面白いなと思った方、チャンネル登録と高評価を是非よろしくお願いします。ではでは
記事公開
