github:入門

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
最新のリビジョン両方とも次のリビジョン
github:入門 [2021/08/24 10:34] – [練習:p5jsプロジェクトでgithubにリポジトリを作成する] babagithub:入門 [2021/08/27 00:00] – [他人のリポジトリにPull Requestを送る] baba
行 1: 行 1:
 ====== githubをこれから始める人へ ====== ====== githubをこれから始める人へ ======
 このページはこれからgithubを利用しようと思っているデザイン・アート系学生を対象とした解説ページです.主に動画を利用し,必要なポイントは動画の下にテキストでまとめておきます. このページはこれからgithubを利用しようと思っているデザイン・アート系学生を対象とした解説ページです.主に動画を利用し,必要なポイントは動画の下にテキストでまとめておきます.
-github上にリポジトリを作成して,pushしたり,人のリポジトリをフォークしてプルリクエストを送る等,基本的な内容を紹介します.+github上にリポジトリを作成して,pushしたり,人のリポジトリプルリクエストを送る等,基本的な内容を紹介します.
  
 ===== 最初にコマンドラインを覚えよう ===== ===== 最初にコマンドラインを覚えよう =====
行 57: 行 57:
     * [[https://ws.tetsuakibaba.jp/doku.php?id=p5js:01.%E9%96%8B%E7%99%BA%E7%92%B0%E5%A2%83#visual_studio_code_%E3%81%A7%E5%88%A9%E7%94%A8%E3%81%99%E3%82%8B|vcコードのp5js用途設定の解説]]     * [[https://ws.tetsuakibaba.jp/doku.php?id=p5js:01.%E9%96%8B%E7%99%BA%E7%92%B0%E5%A2%83#visual_studio_code_%E3%81%A7%E5%88%A9%E7%94%A8%E3%81%99%E3%82%8B|vcコードのp5js用途設定の解説]]
     * [[https://gist.github.com/mignonstyle/083c9e1651d7734f84c99b8cf49d57fa|githubのマークダウン記述方式のチートシート]]     * [[https://gist.github.com/mignonstyle/083c9e1651d7734f84c99b8cf49d57fa|githubのマークダウン記述方式のチートシート]]
 +
 +===== Branchを使って手軽にバージョンを管理する =====
 +ここではBrachという機能を利用して,簡単なバージョン管理方法に関して解説します.
 +
 +==== Branchの作成とpushと削除 ====
 +まず最初はbranchの作成と削除について,ローカル及びリモートリポジトリについて解説します.
 +<html>
 +<div style="position: relative; padding-bottom: 56.25%; height: 0;"><iframe src="https://www.loom.com/embed/189c27f1e1e54c138c94d3cd437a1c40" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe></div>
 +</html>
 +^ コマンド                  ^ 解説                                                                                                                            ^
 +| git branch                | ローカルリポジトリに存在するbranchの一覧を表示                                                                                  |
 +| git branch test           | ローカルリポジトリにtestというbranchを作成する                                                                                  |
 +| git checkout test         | test branchに移動する                                                                                                           |
 +| git branch --delete test  | test branchを削除する(ただし,testブランチにcheckoutしている場合や,test branchで更新内容をpushしている場合は,削除できない)  |
 +| git branch -D test        | test branchで更新内容をpushしてしまった場合でも強制的にローカルbranchを削除したいときに使う                                     |
 +| git push origin :test     | リモートのtest branchを削除する                                                                                                 |
 +
 +==== branchをmainにmergeする ====
 +作成したbranchがある程度開発が進み,mainにしてもよいな,というときに行います.よくやるのは開発系ブランチで常に作業しながら,動作確認がとれたらmainにマージしていくみたいなやり方かなと思います.
 +
 +<html>
 +<div style="position: relative; padding-bottom: 56.25%; height: 0;"><iframe src="https://www.loom.com/embed/cf2eccc65d734805bbdebc45582cc356" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe></div>
 +</html>
 +
 +^ コマンド       ^ 解説                                                                                           ^
 +| git merge dev  | devブランチをmainにマージする(マージ対象となるブランチに必ずcheckoutしておく必要があります)  |
 +
 +==== 編集しちゃったファイルを前回の状態に戻す(cloneを使わない) ====
 +上記の動画最後に,最悪git cloneで最初に戻しちゃえばよいよ,という話をしました.でもしましまからもうちょっとちゃんと戻し方は説明したほうがいい,という雰囲気を感じたので個ここに追記します.先程の動画では最新の状態から修正をはじめて,「やっぱやめた」という具合に修正内容を戻す場合にpullを利用して失敗していました.これは最新の状態から編集を始めたため,pullをしてもローカルもリモートも同じコミットバージョンであったため,Already up to dateと言われて,元には戻せない,という状況でした.以下の動画では最新の状態から編集をはじめてその編集内容を戻す様子を収めて置きました.
 +<html>
 +<div style="position: relative; padding-bottom: 56.25%; height: 0;"><iframe src="https://www.loom.com/embed/26590a51380b48ac8aacea16bd8e04d6" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe></div>
 +</html>
 +
 +^ コマンド              ^ 説明                                                                                    ^
 +| git reset README.md   | README.msを一旦 git add してしまった後に「やっぱりやめた」というときに使うコマンドです  |
 +| git reset -hard HEAD  | ファイルの編集を始めたけど一旦最初の状態に戻したいときはこのコマンド                    |
 +===== Pull Request =====
 +Pull Requestには大きく分けて
 +  * チーム開発によるPull Request(forkを使わない)
 +  * 他人のリポジトリに修正・追加したいPull Request(forkを使う)
 +の2種類があります.githubを使い始めの頃は,pull requestは知り合いに送ったり,研究室内での共同開発用途が多いと思うので,forkを利用しない方式ですが,ある程度開発になれてきたら赤の他人のリポジトリを直したり機能追加してあげたりすることもあると思います.その場合にはforkを利用するPull Requestとなります. 
 +
 +==== チーム開発によるPull Request ====
 +すでに共同で開発をする人がいるという前提からスタートします.この開発の場合はAさんが作成したリポジトリをBさんがcloneして,これまで説明したやり方で簡単にAさんが作成したブランチを更新することができます.もっとも簡単な例はmainブランチをBさんが更新してしまうやり方でしょう.
 +
 +=== Aさんが作成したリポジトリのmainブランチにBさんが直接pushする ===
 +<html>
 +<div style="position: relative; padding-bottom: 56.25%; height: 0;"><iframe src="https://www.loom.com/embed/d5499364d9014b35bf14809b7b2bad05" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe></div>
 +</html>
 +
 +=== Aさんが作成したリポジトリにBさんがdevという名前のブランチでpushして,Pull Request(mainにマージして頂戴のアピール)を作成して,Aさんがmainにマージするまで ===
 +<html>
 +<div style="position: relative; padding-bottom: 56.25%; height: 0;"><iframe src="https://www.loom.com/embed/d9ad15d486a74b92b05e1fe394374c1a" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe></div>
 +</html>
 +==== 他人のリポジトリにPull Requestを送る ====
 +このやり方はこれまでの内容とほぼ同じです.唯一違う点は,git cloneから始めるのではなく,対象となるリポジトリをforkすることから始めます.先程のチーム開発と比べて,
 +  - PRを送りたいリポジトリをforkする(ブラウザから行う)
 +  - forkしたリポジトリをcloneする
 +  - cloneしたローカルリポジトリで適当な名前のbranchを切って修正・追加を行う
 +  - 変更した内容でforkしたリモートリポジトリにpushする
 +  - ブラウザ上のforkしたリモートリポジトリページからpull requestを作成する
 +  - 自分のPRをmergeしてもらったら,forkしたリポジトリも本家に合わせてmergeする
 +という流れになります.ではやってみましょう.
 +
 +<html>
 +<div style="position: relative; padding-bottom: 56.25%; height: 0;"><iframe src="https://www.loom.com/embed/0a8146db13144801bc6d722fbbcd558c" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe></div>
 +</html>
 +
 +この回では特に新しいコマンドはありません.
 +
 ====== Reference ====== ====== Reference ======
- * gitの入門周りのコマンドだけをまとめたページ:https://qiita.com/ay3/items/8d758ebde41d256a32dc+  * gitの入門周りのコマンドだけをまとめたページ:https://qiita.com/ay3/items/8d758ebde41d256a32dc
  
  • /home/users/2/lolipop.jp-4404d470cd64c603/web/ws/data/pages/github/入門.txt
  • 最終更新: 2021/09/14 16:18
  • by baba