Github関連の知識

Github について説明する前に、まずオープンソースに関連する概念を理解しましょう

オープンソース関連の概念を理解する

1. オープンソースとは

 一般的な理解:オープンソースはプログラムだけでなくプログラムのソースコードも提供することを意味し、クローズドソースはソースコードを提供せずにプログラムのみを提供することを意味します。

2.オープンソースライセンス契約とは何ですか

オープンソースとは、まったく制限がないことを意味するものではなく、ユーザーの利用範囲を制限し、作者の権利を保護するために、すべてのオープンソース プロジェクトはオープンソース ライセンス契約(オープンソース ライセンス) に従う必要があります。

3. 5 つの一般的なオープンソース ライセンス契約

 その他のオープンソース ライセンス契約の概要については、ブログhttps://www.runoob.com/w3cnote/open-source-license.htmlを参照してください。

4. オープンソースを採用する理由

オープンソースの中心的な考え方は、「私は皆のためにあり、誰もが私のためにある」です。人々は次の 3 つの理由でオープンソースをますます好みます。

  1. オープンソースにより、ユーザーはより詳細な制御が可能になります
  2. オープンソースで学習が簡単に
  3. オープンソースのみが真のセキュリティを備えています

オープン ソースは、ソフトウェア開発の分野における主要なトレンドです。オープン ソースを受け入れることは、巨人の肩の上に立つようなものです。自分で車輪を再発明する必要がないため、開発がますます容易になります。

5. オープンソースプロジェクトホスティングプラットフォーム

オープンソース プロジェクトのソース コードを無料で保存するための専用のWeb サイトは、オープンソース プロジェクト ホスティング プラットフォームと呼ばれます現在、世界には主に 3 つの有名なオープンソース プロジェクト ホスティング プラットフォームがあります。

  1. Github (世界で最も強力なオープンソース プロジェクト ホスティング プラットフォームですが、どれも)
  2. Gitlab (コードプライバシーのサポートが充実しているため、エンタープライズユーザーが増えています)
  3. Gitee (コード クラウドとも呼ばれ、国内のオープンソース プロジェクト ホスティング プラットフォームです。高速アクセス、純粋な中国語インターフェイス、使いやすい)

注: 上記の 3 つのオープン ソース プロジェクト ホスティング プラットフォームは、Git によって管理されるプロジェクト ソース コードのみをホストできるため、名前はすべて Git で始まります。

6. Githubとは

Github は世界最大のオープンソース プロジェクト ホスティング プラットフォームです。唯一のバージョン管理ツールとして Git のみをサポートしているため、GitHub という名前が付けられています。Github では次のことができます。

  1. お気に入りのオープンソース プロジェクトをフォローし、いいねを押して電話をかけましょう
  2. お気に入りのオープンソース プロジェクトに貢献する I (プル リクエスト)
  3. オープンソース プロジェクトの作成者とバグについて話し合い、リクエストを提起します (問題)
  4. お気に入りのプロジェクトを自分のプロジェクトとしてコピーして変更します (フォーク)
  5. 独自のオープンソース プロジェクトを作成する
  6. 等...

ギットハブ

1. Githubアカウントの登録手順

  1. Github の公式 Web サイトのホームページ http://github.com にアクセスしてください。
  2. 「新規登録」ボタンをクリックすると登録ページにジャンプします
  3. 利用可能なユーザー名、電子メール、パスワードを入力します
  4. 矢印をクリックして検証画像の位置を合わせます
  5. 「Greate account」ボタンをクリックして新規ユーザーを登録してください
  6. ログインの 3 番目のステップで入力した電子メール アドレスで、アクティベーション リンクをクリックして登録を完了します。

2. Githubリモートウェアハウスの利用

2.1 新しい空のリモートウェアハウスを作成する

 2.2 遠隔倉庫の2つのアクセス方法

Github 上のリモート ウェアハウスにはHTTPSSSHという 2 つのアクセス方法があります。それらの違いは次のとおりです。

  1. HTTPS:構成は不要ですが、ウェアハウスにアクセスするたびに、正常にアクセスするには Github アカウントとパスワードを繰り返し入力する必要があります
  2. SSH:追加の構成が必要ですが、構成が成功すると、ウェアハウスにアクセスするたびに Github アカウントとパスワードを繰り返し入力する必要はありません。

注: 実際の開発では、SSH を使用してリモート ウェアハウスにアクセスすることをお勧めします

2.3 HTTPS に基づいてローカル ウェアハウスを Github にアップロードする

2 回目以降に新しいコンテンツを追加する場合は、git Push を直接使用してください。

2.4 SSHキー

SSH キーの役割:ログインせずにローカル ウェアハウスと Github 間の暗号化されたデータ送信を実現します。

SSH キーの利点: ログイン不要の ID 認証、暗号化されたデータ送信

SSH キーは、次の 2 つの部分で構成されます。

  1. id_rsa (秘密鍵ファイル、クライアントコンピュータに保存)
  2. id_rsa.pub (公開鍵ファイル、Github で設定する必要があります)

2.5 SSHキーの生成

  1. Git Bash を開く
  2. 次のコマンドを貼り付け、[email protected] を Github アカウントの入力時に入力したメール アドレスに置き換えます: ssh-keygen -t rsa -b 4096 -C " [email protected] "
  3. Enter キーを 3 回連続して押すと、2 つのファイル id_rsa およ​​び id_rsa.pub が C:\Users\username フォルダー\.ssh ディレクトリに生成されます。

2.6 SSH キーの構成

  1. id_rsa.pubファイルをメモ帳で開き、その内容をコピーします。
  2. ブラウザで Github にログインし、アバター -> 設定 -> SSH および GPG キー -> 新しい SSH キーをクリックします。
  3. id_rsa.pub ファイルの内容をキーに対応するテキスト ボックスに貼り付けます。
  4. [タイトル] テキスト ボックスに任意の名前を入力して、キーの出所を特定します。

2.7 Github の SSH キーが正常に構成されているかどうかを検出する

Git Bash を開き、次のコマンドを入力して Enter キーを押して実行します。

ssh -T [email protected]

上記のコマンドが正常に実行されると、次のプロンプト メッセージが表示される場合があります。

 「yes」と入力した後、次のようなメッセージが表示されれば、SSH キーが正常に構成されたことがわかります。

 2.8 SSH に基づいてローカル ウェアハウスを Github にアップロードする

まず、ローカルに Git ウェアハウスを作成する必要があります。次に、この GitHub に入り、空のリモート ウェアハウスを作成して、SSH アクセス方法に切り替えます。

 すべての手順が完了すると、ローカル ウェアハウスを Github に正常にアップロードできます。

2.9 リモート ウェアハウスのクローンをローカル ウェアハウスに作成する

Git bash を開き、次のコマンドを入力して Enter キーを押して実行します。

git clone リモート ウェアハウスのアドレス

Git ブランチ

1. 支店の概念

ブランチはSF 映画の平行世界です。コンピューターの前で Git を学ぼうとしているとき、別の平行世界で SVN を学ぼうとしているときもあります。

二つの並行世界が互いに干渉しなければ、今のあなたには何の影響も与えません。

しかし、ある時点で 2 つの並行世界が統合され、その結果、Git と SVN の両方を学習することになりました。

 2. 実際の開発におけるブランチの役割

複数人での共同開発中は、相互干渉を防止し、共同開発のエクスペリエンスを向上させるために、各開発者がブランチに基づいてプロジェクト機能を開発することをお勧めします。たとえば、次のとおりです。

 3. マスターメインブランチ

ローカル Git ウェアハウスを初期化すると、Git はデフォルトでmasterという名前のブランチを作成します。通常、このマスター ブランチをメイン ブランチと呼びます

 実際の作業では、マスターメインブランチの役割は、プロジェクト全体の完成した関数コードを保存して記録することです。したがって、プログラマがマスター ブランチでコードを直接変更することは許可されていません。変更するとリスクが高くなり、プロジェクト全体がクラッシュする可能性が高くなります。

4. 機能ブランチ

プログラマはマスター ブランチ上で関数を直接開発できないため、関数ブランチという概念があります。

関数ブランチは、新しい関数の開発に特別に使用されるブランチを指します。これは、マスター メイン ブランチから一時的にフォークされます。新しい関数を開発してテストするときは、図に示すように、マスター メイン ブランチにマージする必要があります。

メインブランチのサイクルは長く、ファンクションブランチのサイクルは短く、関数が完了するとファンクションサイクルが終了し、メインブランチのみが残ります。

 5. ブランチリストを表示する

git branch

操作の結果は次のようになります。

 注:ブランチ名の前にある* は、現在のブランチを示します

6. 新しいブランチを作成する

次のコマンドを使用して、現在のブランチに基づいて新しいブランチを作成します。この時点で、新しいブランチのコードは現在のブランチとまったく同じです。

git branch 分支名称

 回路図は以下の通りです:

7. ブランチを切り替える

次のコマンドを使用して、開発用に指定されたブランチに切り替えます。

git checkout login

回路図は以下の通りです:

 8. ブランチの迅速な作成と切り替え

次のコマンドを使用すると、指定した名前で新しいブランチを作成しすぐに新しいブランチに切り替えることができます。

# -h 表示创建一个新分支
# checkout 表示切换到刚才新建的分支上
git checkout -b 分支名称

回路図は以下の通りです:

 注: 「git checkout -b Branchname」は、次の 2 つのコマンドの短縮形です。

  1. git ブランチ ブランチ名
  2. git checkout ブランチ名

9. ブランチをマージする

関数ブランチのコード開発とテストが完了したら、次のコマンドを使用して、完成したコードをマスター メイン ブランチにマージできます。

# 1. 切换到 master 分支
git checkout master

# 2. 在 master 分支上运行 git merge 命令,将 login 分支的代码合并到 master 分支
git merge login

 ブランチをマージする際の注意点:

C ブランチのコードを A ブランチにマージしたいとします。まず A ブランチに切り替えてからgit merge コマンドを実行してC ブランチをマージする必要があります。

10. ブランチの削除

関数ブランチのコードをマスター メイン ブランチにマージした後、次のコマンドを使用して、対応する関数ブランチを削除できます。

git branch -d 分支名称

注: ブランチを削除する場合は、このブランチの下で git Branch -d コマンドを実行することはできません。ブランチを離れる必要があります。 

11. 競合が発生した場合のブランチのマージ

2 つの異なるブランチで同じファイル異なる変更が加えられた場合、Git はそれらをきれいにマージできません。この時点で、これらの競合するファイルを開いて、手動で競合を解決する必要があります

12. Git リモートブランチの操作

12.1. ローカルブランチをリモートリポジトリにプッシュする

ローカル ブランチをリモート ウェアハウスに初めてプッシュする場合は、次のコマンドを実行する必要があります。

# -u 表示把本地分支和远程分支进行关联,只在第一次推动的时候需要带 -u 参数
git push -u 远程仓库的别名 本地分支名称:远程分支名称

# 实际案例:
git push -u origin payment:pay

# 如果希望远程分支的名称和本地分支名称保持一致,可以对命令进行简化
git push -u origin payment

注:最初のプッシュ ブランチには-u パラメーターが必要です。その後、git Push を直接使用してコードをリモート ブランチにプッシュできます。 

12.2. リモート倉庫内のすべての支店のリストを表示する

次のコマンドを使用して、リモート ウェアハウス内のすべてのブランチ リストの情報を表示できます。

git remote show 远程仓库名称

12.3. ブランチの追跡

ブランチの追跡とは、リモート ウェアハウスからローカル ウェアハウスにリモート ブランチをダウンロードすることを指します。実行する必要があるコマンドは次のとおりです。

# 从远程仓库中,把对应的远程分支下载到本地仓库,保持本地分支和远程分支名称相同
git checkout 远程分支的名称

# 示例:
git checkout pay


# 从远程仓库中,把对应的远程分支下载到本地仓库,并把下载的本地分支进行重命名
git checkout -b 本地分支名称 远程仓库名称/远程分支名称

# 示例:
git checkout -b payment origin/pay

12.4. リモートブランチから最新のコードを取得する

次のコマンドを使用して、最新のコードをリモート ブランチから対応するローカル ブランチにダウンロードできます。

# 从远程仓库,拉取当前分支最新的代码,保持当前分支的代码和远程分支代码一致
git pull

 注: どのブランチをプルするかは、どのブランチで git pull を実行する必要があります。

12.5 リモートブランチの削除

次のコマンドを使用して、リモート ウェアハウス内の指定したブランチを削除できます。

# 删除远程仓库中,指定名称的远程分支
git push 远程仓库名称 --delete 远程分支名称

# 示例:
git push origin --delete pay

おすすめ

転載: blog.csdn.net/DIUDIUjiang/article/details/126901488