データサイエンティスト向けのGitHubデスクトップ

ソースノード: 1876650

データサイエンティスト向けのGitHubデスクトップ

コマンドラインのバージョン管理よりも怖くない。


By ドリュー・シーヴァルト、データサイエンティスト

バージョン管理は、コードの共同作業、他のユーザーとの共有、古いバージョンのコードの表示、さらにはコードの自動展開にとって重要です。 最初は少し混乱するかもしれませんが、特にオープンソーススペースで作業している場合や、プロジェクトでバージョン管理を頻繁に使用するチームで作業している場合は、時間をかけるだけの価値があります。 使用する価値のある最大の機能のいくつかを次に示します。

  • コメント付きのファイル変更履歴の保存
  • 同じプロジェクトを同時に編集する複数のユーザーを整理する
  • コードレビュー手順の促進
  • ワークフローを自動化して、問題を報告し、改善を要求し、コードをデプロイします

リラックスしてください。コマンドラインを使用する必要はありません。
リラックスしてください。コマンドラインを使用する必要はありません。
による写真 デニス・ファン・ダレン on Unsplash

 

バージョン管理機能

 
 
バージョン管理の主な機能のXNUMXつは、リポジトリ内のすべてのファイルのファイル変更履歴です。 これは、すべてのファイルの変更ログとして機能するため、過去の任意の時点で実行されていたコードをいつでも確認できます。 誰かがファイルを更新して新しいバージョンをリポジトリにプッシュするたびに、短いコメントを追加する必要があります。 完璧な世界では、これは変更が何であったか、そしてなぜそれらが行われたのかを詳述します。 なぜ何かが変更されたのか、またはその理由について質問がある場合は、責任者が、提供された追加情報とともにコミットでタグ付けされます。

バージョン管理のもうXNUMXつの機能は、ブランチを作成する機能です。 ブランチは、個別に保持されるコードの新しいバージョンです。 これは、最新の動作バージョンがあるメインブランチを変更しないため、コードに変更を加えてテストするのに役立ちます。 ブランチは、さまざまなユーザーがさまざまなコードや機能を同時に操作するために使用することもできます。 これらのブランチは、準備ができたらマスターにマージして戻すことができ、マージするときにブランチ間の違いを調整するプロセスがあります。

チームで作業する場合、コードレビューはベストプラクティスです。 XNUMX人の人が新しいブランチの新機能に関するすべての作業を行うことができますが、それをやみくもにメインブランチにマージする前に、チームがレビューする必要があります。 コードをメインブランチに移動するプルリクエストが作成されると、チームメンバーがコードについて話し合い、メインブランチにマージされる前に変更をリクエストできるディスカッションも開始されます。 このプロセスは、バグや破損を防ぎ、コードの効率を改善し、コードをフォーマットするための標準に一致させるために、本番環境に移行するコードを改善するのに役立つはずです。

バージョン管理にGitHubを使用することの最後の注目すべき利点は、GitHubが提供する自動化オプションです。 標準のコードレビューチェックリストがある場合は、プルリクエストの作成時に使用できるテンプレートとして追加でき、レビュータスクの完了時に入力できるようになります。 テンプレートは、問題を作成するときにも使用できるため、問題を作成するときに入力する必要のあるすべての詳細を覚えておくことができます。 GitHubは、自動化をサポートするアクションも提供します。 これらは、コードをマスターブランチにマージするなど、さまざまなイベントによってトリガーされる可能性があります。 アクションは、単体テストを実行したり、パッケージコンポーネントをビルド/コンパイルしたり、コードを本番環境にデプロイしたりすることもできます。

バージョン管理フレーバー

 
 
あなたが聞いたことがあるかもしれないいくつかの有名なバージョン管理があります。 最も人気のあるもののいくつかはGitとGitHubです。 Gitの バージョン管理の基盤となるテクノロジーであり、 GitHubの バージョン管理ワークフローを簡素化するソフトウェアです。

Gitは、外部リポジトリを必要とせずにローカルで使用できます。 コンピュータのハードドライブですべてのバージョン管理タスクを実行できます。 ローカルGitリポジトリは、個人的なプロジェクトや、コードをチーム全体と共有する準備が整っていないが、バージョン管理のメリットが必要な場合に最適です。

GitHub Webサイトは、コードを格納するためのリポジトリです。 PythonやRパッケージなど、多くのオープンソースプロジェクトがGitHubWebサイトでホストされています。 公開リポジトリの場合、誰でも改訂履歴、パッケージの問題、およびそれに関連するドキュメントを表示できます。

GitHub Webサイトのリポジトリに接続するには、GitまたはGitHubデスクトップを使用できます。 コマンドラインインターフェイス(CLI)が好きな人のために、 レベッカビッカリー に関する素晴らしい記事があります データサイエンスにGitCLIを使用する。 では、なぜあなたは読み続ける必要がありますか? コマンドラインは威圧的である可能性があります。 グラフィカルユーザーインターフェイス(GUI)でバージョン管理を管理することは問題ありません。 GitHubデスクトップは、リポジトリとの明確でシンプルなインターフェースを提供します。

GitHubデスクトッププロセスフロー

 
 
リポジトリのプロセスフローは人によって少し異なりますが、GitHubのコードに変更を加えるための一般的な手順はいくつかあります。

  1. ブランチの作成
  2. コミットの追加
  3. 新しいプルリクエストの作成
  4. コードレビューの完了
  5. プルリクエストのマージ

ブランチを作成すると、現在の本番コードのコピーが作成されます。 開発者はファイルに変更を加え、新しいブランチに変更をコミットします。 次に、プルリクエストはディスカッションを開き、新しいブランチの変更を本番コードに追加します。通常はマスターブランチまたはメインブランチにあります。 コードレビューアは、プルリクエストで行われた変更についてコメントを追加し、説明をリクエストできます。 レビューが完了し、必要な変更が加えられたら、プルリクエストをマスターブランチまたはメインブランチにマージして閉じることができます。

GitHubデスクトップを使用して各手順を実行する方法を見て、これらの手順をさらに詳しく見ていきましょう。

ブランチの作成(新しいコードを古いコードから分離する)

 
 
変更するには、最初に新しいブランチを作成します。 リポジトリへのフルアクセス権がある場合は、リポジトリのGitHubサイトに新しいブランチを作成するだけです。

1a。 ブランチをクリックします:メイン



著者による画像

 

2a。 テキストボックスに新しいブランチの名前を入力します。 物事を整理するために、組織から考慮すべきいくつかのブランチ命名規則があるかもしれません



著者による画像

 

3a。 [ブランチの作成]をクリックします



著者による画像

 

これで、新しいブランチが選択されます。



著者による画像

 

パブリックプロジェクトで一般的なリポジトリへのフルアクセスがない場合は、リポジトリをフォークする必要があります。 新しいブランチとフォークは同義語です。 フォークは、通常は個人のプロファイルの下で、本番コードと同じリポジトリではなく、新しいリポジトリに作成されます。 フォークするには:

1b。 右上の[フォーク]をクリックします



著者による画像

 

2b。 ファイルがコピーされるのを待つ



著者による画像

 

3b。 新しいフォークが選択されます



著者による画像

 

コミットの追加(コードの拡張/機能の追加)

 
 
コードをコミットするには、リポジトリをローカルコンピューターに複製します。 これにより、更新をリポジトリに送り返す前に作業するコードがコピーされます。 リポジトリをローカルマシンに複製するには:

[クローン]または[ダウンロード]をクリックします。



著者による画像

 

GitHubデスクトップで[開く]をクリックします。



著者による画像

 

GitHubデスクトップをお持ちでない場合は、[GitHubデスクトップのダウンロード]をクリックしてください。



著者による画像

 

GitHubデスクトップは、ローカルマシンのどこにリポジトリのクローンを作成するかを尋ねます。 これはローカルパスフィールドです。



著者による画像

 

ブランチをクリックして、新しく作成されたブランチを選択します。 これにより、ローカルマシン上のファイルがそのブランチの更新で更新され、コミットを追加するアクティブなマシンになります。



著者による画像

 

変更を加えるには、クローン作成時に選択したディレクトリを開き、通常どおりテキストエディタまたは統合開発環境(IDE)を使用して変更を加えます。 ファイルを保存します。

GitHubデスクトップに戻ります。 GitHubデスクトップは、リポジトリフォルダーツリーを常にスキャンしており、行った変更を確認します。 これらの変更は左側のペインに表示されます。 右側のペインには、選択したファイルへの変更がプレビューされます(特定のファイルタイプはプレビューされません)。



著者による画像

 

関連する一連の変更を行うたびに、それらの変更をリポジトリにコミットします。 コミットにコメントを追加して、変更内容を簡単に識別できるようにしてください。 上のテキストボックスは簡単な説明用ですが、コミットについて追加するメモがある場合は、より大きな説明テキストボックスに入力してください。

変更を加えてコメントを追加したら、変更をコミットします。



著者による画像

 

変更をコミットすると、ローカルファイルにのみ保存されます。 変更をGitHubサーバーにプッシュバックするには、プッシュオリジンをクリックします。 サーバーにプッシュバックされていないコミットが行われた場合は、右側のペインに次のメッセージが表示されます。 xxコミットをオリジンリモートにプッシュします。 オリジンは、リポジトリのクローンが作成された場所の名前にすぎません。



著者による画像

 

プルリクエストを開く

 
 
GitHubサーバー上のリポジトリに移動します。 正しいブランチにいることを確認してください。 元のリポジトリに新しいブランチを作成した場合は、そこに移動します。 リポジトリをフォークする必要がある場合は、個人プロファイルでリポジトリに移動します。

ソフトウェア設定ページで、下図のように プルリクエスト タブをクリック 新しいプルリクエスト.



著者による画像

 

比較するブランチとして新しいブランチを選択し、 [プルリクエストの作成]をクリックします。 この場合、プルリクエストにはコミットコメントが自動的に入力されます。



著者による画像

 

コードレビュー

 
 
コードレビューは、追加または変更するコードが正しく、複数の人によってレビューおよび承認されていることを確認するのに役立ちます。 リポジトリにアクセスできるかどうかに関係なく、常にレビュー担当者に変更を確認してもらう必要があります。 質問がある場合は、チームとして検討してください。

プルリクエストは、リポジトリの[プルリクエスト]タブに表示されます。 各プルリクエストには、会話、コミット、およびファイル変更タブがあります。

会話は、人々がコードに関する質問やコメントを追加できる場所です。 コメントをフォーマットし、コメント内の人や問題にタグを付けることができます。

コミットには、プルリクエストで行われたすべてのコミットとコメントが表示されます

変更されたファイルは、変更、追加、または削除されたファイルと、利用可能な場合はコードの行ごとの比較を示します。



著者による画像

 

プルリクエストをマージする

 
 
私の場合、新しいブランチで作業しているときにメインブランチが変更されました。 これが、解決すべき競合があるというメッセージが表示される理由です。 [競合の解決]ボタンをクリックすると、エディターが開きます。 各ブランチのファイルのバージョンが表示され、一方を削除してもう一方を保持したり、両方のバージョンを作成したりできます。



著者による画像

 

この場合、メインブランチのバージョンは正しいです。 他のブランチとセパレーターからの変更は削除できます。 競合は解決済みとしてマークされ、マージにコミットされます。



著者による画像

 

コードレビューと競合が邪魔にならないので、プルリクエストをマージできます。 もう一度、マージが何を達成するかについてコメントを与えるオプションがあります。 マージ後、コードはマスターブランチまたはメインブランチの一部になります!



著者による画像

 

これで、GitHubとGitHubデスクトップを使用して最も基本的なバージョン管理タスクを完了する方法がわかりました。

私はデータサイエンス、分析、プログラミングの概念について書いています。 あなたは私とつながることができます MTwitterLinkedIn.

参考文献

 
 
GitHubフローを理解する
プロジェクトに取り組んでいるときは、さまざまな機能やアイデアが常に進行中です…

 
Gitによるバージョン管理
ウルフマンとドラキュラはユニバーサルミッション(ユーフォリック州立大学からの宇宙サービスのスピンオフ)に雇われて…

 
バージョン管理とは| AtlassianGitチュートリアル
バージョン管理は、ソース管理とも呼ばれ、ソフトウェアコードへの変更を追跡および管理する方法です…

 
バイオ: ドリュー・シーヴァルト Mercedes-Benz FinancialServicesのデータサイエンティストです。 TwitterでDrewをフォローする @RealDrewData または接続する LinkedIn.

元の。 許可を得て転載。

関連する

出典:https://www.kdnuggets.com/2021/09/github-desktop-data-scientists.html

タイムスタンプ:

より多くの KDナゲット