リモートチームのマスターバージョン管理

Sep 12, 2025
操作方法
Version control

最後の数年間でWeb開発ではリモートで働くことができます。バージョン管理の前に、同じ開発プロジェクトでリモートで作業していますが、絶対的な悪夢でした。開発者はしなければならなかっただろう 大きなファイルを送る 互いに(おそらく電子メールを通して)、それを送る前に自分のコードを貼り付けます。追加されたものを追跡する本当の方法はありませんでした。

  • 6 Web開発者のための6つのスキルが必要です

ありがたいことに、バージョン管理が到着して、すべての表面にはたくさんの管理可能な開発を行いました。特にリモート開発チームで働くことになると、Webプロジェクトは実装と管理がはるかに簡単になりました。上書きされているWebサイトの現在のバージョンについて心配する必要はもうありません。各チームメンバーはいつでもどのファイルでも自由に機能します。 クラウドストレージ プロセスを手伝ってください。

このチュートリアルでは、私たちは使えます g g コードを管理する。 BitbucketやTFVCなど、さまざまな種類のバージョン管理ツールがありますが、すべて異なるにもかかわらず、コードの管理に関して原則は同じままです。

サイトのビルドプロセスを簡単にするためのより多くの方法については、上のガイドを参照してください。 ウェブサイトビルダー そして ウェブホスティング サービス。

分岐モデル

第一に、開発と展開プロセスをスムーズに実行するために、チームで働くときに分岐モデルを成功させることは非常に重要です。複数の開発者が同じプロジェクトに取り組んでいる可能性が最も高いです。リモートの労働力を扱うとき、私は最良のワークフローが3つの主要な枝でも一定の一一組の一連の主要な支店で構成されていると思います。

  • 枝を開発する: 各行のコードは、クライアントによってテストされ検証されています。
  • ステージングブランチ: これは検証環境に対応します。
  • リリースブランチ: これには、プロダクションの最後のバージョンが含まれています。

フィーチャブランチのセットもあります。ただし、これらは最初に新機能を構築するための一時的なものであるでしょう。

1つのプロジェクト上の複数の開発者

Version control: Branching model

最良のワークフローは3つの主要な枝で構成されています:開発、ステージング、リリース

リモートで働く2人の開発者でチームを実行しましょう。私たちは彼らにSarahとJamesと呼びます:彼らは両方ともクライアントのために同じeCommerceのウェブサイトに取り組んでいます。サラは、顧客の詳細を登録する機能を開発する必要があります。

これを3つの別々のユーザーストーリーに分解します - 追加、編集、削除 - これら3つのチケットをSprint Backlogに追加します。

フィーチャブランチ

Version control: Feature branches

顧客詳細機能の開発のための機能ブランチの追加と追加の詳細タスクのユーザーストーリーブランチの追加

だから、サラは顧客の詳細セクションの追加セクションで始まりましょう。彼女は、最初のタスク 'add-details'のための特徴ブランチ '顧客詳細'とユーザーストーリーを作成する必要があるでしょう。

 gitチェックアウト開発&& GITプル起源/開発
git checkout -b機能/顧客の詳細
git checkout -b追加の詳細

サラは、ローカルで一時的な支店の「アドレス」で取り組んでいき、彼女が発展させるにつれて彼女の仕事をコミットします。さて、Jamesはサラを顧客の詳細機能で助けたいと言ってみましょう。そのため、詳細の削除に取り組んできました。

Jamesは共有ブランチの最後のバージョンを引き、ユーザーストーリーの「Delete-Details」の新しいブランチを作成します。それから彼はサラのコードを上書きすることを心配せずに彼自身の追加を始めることができます。

 gitチェックアウト機能/顧客詳細
GITプル起源/機能/顧客の詳細
git checkout -b削除詳細

彼はまた彼の一時的な支店をローカルでコード化し、変更をコミットするでしょう。 Sarahがローカルで彼女の機能を終えたら、彼女はあなたのチケットをコードレビューに入れます。彼女はステージングブランチにコードを押して、ステージング環境でプル要求を開くでしょう。

//彼女は彼女のコードをステージングブランチに押し上げます
Git Push Origin Add-Details.
//ステージング環境でプル要求を開く
git request-pull stagingの詳細

これで、顧客詳細機能ブランチと開発の開発「詳細」と「Delete-Details」の2つのユーザーストーリー機能があります。

併合する

Version control: Adding new branch

ユーザーストーリーの削除詳細の新しいブランチを作成し、別の人のコードの上書きを心配することなく追加を行うことができます。

彼女のコードが検討されたら、彼女の支店をステージングにマージすることができます。チケットは検証欄にあり、リード開発者からの検証を待っています。

 //ステージングブランチの最後のバージョンを取得
git checkoutステージング&アンプ;& GITプル起源/ステージング
git merge add-detail&& GITプッシュ原点:
//彼女は検証環境を構築します
//そして製品の所有者に検証するように頼む

Sarahの作業が検証されたら、チケットをDone列に移動できます。彼女は自分の仕事を機能ブランチにマージすることができ、顧客の詳細を削除するように他のユーザーストーリーを起動することができます。

 // Feature Branchの最後のバージョンを引っ張る
Gitチェックアウト機能/顧客の詳細
GITプル起源機能/顧客の詳細
Git Mergeアドレス&アンプ;& GITプッシュ起源機能/顧客詳細

リード開発者とクライアントの両方によって機能全体が検証されている場合、Sarahはその機能ブランチを開発する準備が整うことができます。

 //彼女は開発ブランチの最後のバージョンを取得します
Git Checkoutの開発& GITプル起源/開発
Git Merge機能/顧客詳細&& GITプッシュ原産地開発

生産に展開

Version control: Deployment

展開する準備ができたら、展開をリリースに展開して展開を起動します。

すべてが完了したら、プロダクションに展開する準備ができていると、Jamesマージはリリースに開発し、展開を開始します。この時点で、彼はすべてのコードが正しいことであり、クライアントは幸せであることを知っています。彼は各バージョンの履歴を得るためにリリースのコミットをタグ付けします。

 gitチェックアウト開発&& GITプル起源/開発
gitチェックアウトリリース&アンプ;& GITプル起源/リリース
Git Merge Develience&& git tag 2.1
GITプッシュ原点リリース - タグ

このワークフローに従う規則

このリモート開発のワークフローは最初は理解するのが非常に難しい場合がありますが、チームがこのメソッドで働くようになると、上書きされているファイルや開発者が同じエリアに取り組んでいることをパニックにする必要なしに無料の作業フローがあります。

覚えておくべきいくつかの重要なことがあります:

  • あなたがあなたのリモート開発者を教える必要がある最初のことはあなたのバージョン管理ワークフローであり、それらがすべて同じ本から読んでいることを確認してください。
  • 機能を開発している場合は、これを小さいユーザーストーリーに分割してみてください。このようにして、すべてのコミットを追跡する方が簡単です。
  • どのステップを見逃してはいけません。たびに同じワークフローの後に同じワークフローが必要です。
  • あなたは常にあなたの支店を開発にマージして次のリリースを準備する必要があります。
  • 可能であれば、毎週ステージングリポジトリを清掃する必要があります。ステージングブランチをローカルでリモートで削除し、開発ブランチから再作成する必要があります。以下の例を参照してください。
 Git Co開発& GITプル起源/開発
Git Branch -D Staging&& Git Push Origin  -  Delete Staging
GIT CO -Bステージング&アンプ;& GITプル起源ステージング

追加のワークフロー

小さなプロジェクトでは、より少ない複雑なワークフローを使用することをお勧めします。最新のバージョン、開発ブランチ、次に追加の機能ごとのブランチのセットを含むマスターは、フォーラム、連絡フォーム、チェックアウトシステムであろうとしています。それはすべてあなたの個人的な好みによって異なります。

マージの競合を管理する

あなたがすべて同じ部屋で働いていても、マージの競合に対処するのは十分難しいですが、あなたがすべての営業所で働いているのであれば、悪夢のさらに悪夢になることができます。最も重要なことは、常にマージを元に戻すことができ、競合が発生する前に状態に戻ることができることを覚えておくことです。

あなたがリード開発者またはあなたのチームとしてのマージをすべてやっているかどうかは、彼らを独立して行うものであるかどうか、最初のステップは何が起こったのかを理解することです。

  • 共同開発者のうちの1人は同じファイル内で同じ行を編集しましたか?
  • 変更したファイルを削除しましたか?
  • 両方とも同じ名前のファイルを追加しましたか?

gitはあなたが持っていることをあなたに言うでしょう 不従った道 via git status.

 $ GITの状況
#支店のチェックアウトシステムに#
#あなたは過敏なパスを持っています。
#(競合を修正し、「Git Commitを実行する」)
#
#不満のあるパス:
#(「git add< file>」を使用して解像度をマークするために使用)
#
#どちらも修正:checkout.html.
#
コミットに変更された変更はありません( "git add"や "git commit -a")

さて、競合の最も一般的な原因は、変更が同じ行にある同じファイルに影響を与える場合です。それで、衝突した行の内容を見てみましょう。あなたはそれがそれを囲むことによってそれが衝突した地域をマークするという事実にgitが本当に良いことに気づくでしょう <<<<<< そして >>>>>> [その他/支店/名] 。この場合、それはそれです チェックアウトシステム

<<<<<<頭
この行は、「ユーザーフォーム」ブランチで作業しながらコミットされました。
====== *
これとは対照的に、この行は「チェックアウトシステム」分岐で作業しながらコミットされました。
>>>>>> REFS /ヘッド/チェックアウトシステム

最初のマーカーの後の内容は現在の作業ブランチから発生します。山括弧の後、GITはどの分岐から変化が起こったかを教えてくれます。並ぶ ====== * 2つの矛盾する変更を分離します。

これで、エディタでファイルを開くことができ、競合マーカーを検索して必要な変更を加えることができます。完了したら、ファイルはそれを見たいと思うように正確に見える必要があります。 私たちのもの または 彼らのもの

 git checkout  -  ours path / to / conflict-file.html 

これに役立つことができる多くのマージツールアプリケーションもあります。万華鏡はMac用の素晴らしいものです。

プロジェクトと発行管理

Version control: Issues and problems

問題に関する問題を混同しないでください。機能のラベル作成を強化、質問、およびバグを使用することもできます。

鉛開発者と同じくらい重要なのと同じくらい重要です。 ZenhubやAsunaなど、そこにはたくさんのソリューションがありますが、Githubの組み込みプロジェクトと発行システムが最高です。

新しいプロジェクトを設定し、ボードの作成、または問題の割り当てのようなものを実行できます。そして問題に関する問題を混乱させるだけではありません:あなたはそれを強化、質問およびバグのためにそれを使うことができます。

これが最良の機能のいくつかです。

  • 組み込みタグ付けシステム: ワークフローを整理して優先し、関連情報のためにプロジェクトを簡単に検索できます。
  • マイルストーン: 10月にベータ起動またはタスクを完了する前に、固定される必要があるバグなど、特定の機能またはプロジェクトフェーズに関する問題を関連付けるのに最適です。
  • マルチアグインメント: 問題を一括してユーザーに割り当て、時間を節約し、より効率的にすることができます。
  • コメント: エンジニアおよび管理チームは、改行コメントシステムを使用している方法のあらゆるステップで進捗状況と結果を簡単に議論することができます。
  • タスクリスト: より大きな問題は、すべての顕微鏡問題の創造を妨げるために段階に分類され、すべての作業を同じ場所に保ちます。
  • マークダウンフォーマット: MarkDownフォーマットを使用する能力はあなたの開発者に人気があり、それはGithubのほとんどの場所で使用することができます。
  • プロジェクトボード: これらは、選択された問題、リクエスト、およびメモを収集して、選択したプロジェクト全体を見ることができます。
  • 高いセキュリティ: あなたはあなたのデータを安全に保つためにGitHubを信頼することができ、他のほとんどのプロジェクト管理システムよりも違反するのは難しいです。

プロジェクトの設定

githubに移動してからリポジトリの1つに向かうと、プロジェクトと呼ばれるタブが表示されます。そこから新しいプロジェクトを選択し、プロジェクトの詳細を設定して新しいプロジェクトテンプレートを作成することができます。

上部に沿って[問題]タブを選択して[新規課題]を選択した場合は、新しい問題を作成することができます。その後、さまざまなラベルを適用できます - これらはバグ、強化、質問、重複などのものです。新機能または要求の機能強化を使用することもできます。その後、さまざまなチームメンバーをタスク、マイルストーン、作成したばかりのプロジェクトに割り当てることができます。

割り当てられたメンバーはすべてのタスクのリストを持ち、現在構築中のものを追跡するためにプロジェクトボードを使用することもできます。以前のチュートリアルを覚えている場合は、チケットをSprint Backlogと検証に移動していました。そのため、Githubはプロジェクトを監督するためのオールインワンツールとして、本当にうまく機能します。

この記事はもともと発行311に発行されました ネット Webデザイナーや開発者向けの世界で最も売れている雑誌。 ここに発行311を購入してください または ここで購読する

関連記事:

  • フリーランス開発者として成功する方法
  • 再利用可能な反応部品を開発する
  • あなたの開発者スキルを開発するための4つのヒント

操作方法 - 最も人気のある記事

リアルなデジタル人間を作成する

操作方法 Sep 12, 2025

あなたは知るかもしれません 人を描く方法 しかし、写真と区別できないデジタルの�..


モノタイプ印刷を始めましょう

操作方法 Sep 12, 2025

時々あなたはあなたと物事を振る必要があります 鉛筆の絵 そして衝動を手放すため�..


Marvelとの完璧なプロトタイプとハンドオフデザイン

操作方法 Sep 12, 2025

企業チームのためのInvision Appとブランドの新しいデザインハンドオフツールよりも短い学習曲線..


鉛筆でおいしいテクスチャを作る方法

操作方法 Sep 12, 2025

学習するとき 描画方法 静物画のアートワークは、興味を築くことが重要であり、様�..


Sustomer Designerで華やかなタイルを作成する

操作方法 Sep 12, 2025

ページ1/2: デザインとテクスチャ3D階タイル デザイン..


油の中で濡れた塗料

操作方法 Sep 12, 2025

「アレプリマ」の絵画(すなわち、1つのセッションで湿った湿潤塗装)は、油絵の性質を抱き�..


キャッシュフローを効果的に管理するための5つの方法

操作方法 Sep 12, 2025

キャッシュフローを制御することはフリーランスの成功への鍵であり、あなたがそれほど効果的..


似顔絵の解剖学:15トップヒント

操作方法 Sep 12, 2025

フルタイムのフリーランサーとして、私はさまざまなスタイルに勤めています。 描画テク..


カテゴリ