svn tutorial source code management using subversion
Subversion(SVN)を使用したソースコード管理の概要:
Subversion(SVN)シリーズへようこそ。この有益なSVNチュートリアルでは、ソフトウェアのバージョン管理の概念の基本と、SVNが開発チームにどのように役立つかについて説明します。
SVNとは何ですか?
SVNは、ソフトウェアプロジェクトのすべてのフェーズで使用できる、シンプルでオープンソースのライセンスソフトウェア構成管理(SCM)ツールです。
- SVNは、スクリプトリポジトリ内のすべてのプロジェクトアーティファクトを維持するのに役立つSubversion制御ツールです。
- これは、ソフトウェアのバージョン管理とリビジョン管理システムの管理に役立つ無料のオープンソースツールです。
- 他のツールと比較すると、理解しやすく、動作が速くなります( 例えば、 GIT、mercurial)。
の基本についてのシリーズのこの最初のチュートリアルを読む Subversion 次のものに進む前に徹底的に。
このSubversionシリーズのチュートリアルのリスト:
チュートリアル#1: SVNチュートリアル:Subversionを使用したソースコード管理
チュートリアル#2: SVNリポジトリをセットアップしてTortoiseSVNクライアントをインストールする方法
チュートリアル#3: Tortoise SVNチュートリアル:コードリポジトリの改訂
チュートリアル#4: SVNリポジトリからコンテンツを削除する方法
Subversionシリーズのチュートリアルの概要:
| チュートリアル番号 | あなたが学ぶこと |
|---|---|
| チュートリアル_#1: | SVNチュートリアル:Subversionを使用したソースコード管理 この有益なSVNチュートリアルでは、ソフトウェアのバージョン管理の概念の基本と、SVNがチーム全体にどのように役立つかについて説明します。 |
| チュートリアル_#2: | SVNリポジトリをセットアップしてTortoiseSVNクライアントをインストールする方法 このチュートリアルでは、無料のサーバーリポジトリと無料のTortoise SVNクライアントUIを設定して、リポジトリとの間でコードをインポートおよびエクスポートする方法を学習します。 |
| チュートリアル_#3: | Tortoise SVNチュートリアル:コードリポジトリの改訂 このチュートリアルでは、Tortoise SVNクライアントを使用して、リポジトリとの間でコードをチェックアウトおよびチェックインする方法について簡単に説明し、簡単に理解できるように簡単な実用的な例を示します。 |
| チュートリアル_#4: | SVNリポジトリからコンテンツを削除する方法 このSVNチュートリアルでは、リポジトリからコードコンテンツを削除する方法を説明します。 SVNは、プロジェクトのバージョン管理に役立ちます。 |
学習内容:
基本的な用語
詳細に入る前に、このチュートリアルで使用する基本的な用語を理解しましょう。
リポジトリ: これは、(設計、ソースコード、ドキュメント、テストケース)などのすべてのプロジェクト成果物が保存される中心的な場所またはリポジトリです。個々のユーザーは、ローカルマシンのファイルをローカルでチェックアウトし、作業することができます。
特定のアーティファクトのすべての履歴情報が保持されているため、ユーザーはログに戻ってログを調べ、「Who&When&Why」が変更されたことを確認できます。
SVNチェックアウト: これは、プロジェクトの成果物を中央リポジトリからローカルマシンに移動するプロセスです。ユーザーは変更を加えたり、変更をローカルに保存したりできます。
コミット: これは、ローカルマシンから中央リポジトリへの変更を保存するプロセスです。コミット中に、他のユーザーが簡単に理解できるように、意味のあるコミットメッセージを提供する必要があります。
これで、SVNの基本的な用語を理解できました。それが日常業務でどのように機能するかの例を見ていきます。
SVNワークフロー
チームリーダーが自動化スクリプトを含むフレームワークスケルトンを作成したシナリオを考えてみましょう。現在、彼はそれを「自動化スクリプトリポジトリ」と呼ばれる一元化された場所にアップロードしようとしています。
チームのメンバーは、リポジトリからローカルマシンに自動化スケルトンスクリプトをチェックアウトする準備ができています。スクリプトの変更が完了すると、戻って中央リポジトリにコミットできます。

SVNをダウンロード
ステップ1: Googleのウェブサイトにアクセスして「DownloadSVN」と入力します。
ステップ2: ウェブサイトから「DownloadTortoiseSVN」のリンクをクリックし、 トータスSVN
ステップ3: システムに搭載されているOSに応じて、リンクTortoise SVN 1.9.6 –64ビット/ 32ビットを選択します。

ステップ4: それぞれのリンクをクリックすると、ダウンロードが開始され、画面の下部に.msiセットアップファイルが表示されます。


ステップ5: .msiファイルをクリックし、(次へ)ボタンをクリックしてセットアップウィザードを実行します。

TortoiseSVNのインストールはエラーなしで正常に完了しました。
JavaEclipseを介してTortoiseSVNを動作させるプラグイン
Eclipse IDEでSubversionをサポートするには、EclipseTeamプロバイダーまたはSubclipseプラグインと呼ばれるプラグインをインストールする必要があります。
ステップ1: に移動します 助けて からのメニュー EclipseIDE環境 とクリック 「EclipseMarketplace」 。

ステップ2: タイプ サブクリップ (検索)テキストボックスで、( 移動ボタン 。
最初のリンクであるサブクリップ4.2.3を選択し、 インストール ボタン。

ステップ3: 以下のようなダイアログボックスが表示されます。クリック 確認 ボタンをクリックして、インストールプロセスを続行します。

ステップ4: Subclipseソフトウェアライセンスに同意し、をクリックします。 終了 ボタン。


SubclipseプラグインがEclipseIDEに正常に追加されました。
JavaEclipseでのフレームワークの作成
ページオブジェクトモデル(POM)Javaデザインパターンを使用した「Hybrid_Framework」と呼ばれるサンプルフレームワークデザインが作成されます。 Mavenプロジェクトは、src / test / javaフォルダーに記述されたすべてのソースコードを使用して作成されます。
com.qspiders.Pagesおよびcom.qspiders.Testsという名前の2つのパッケージが作成されます。
ここでは、ログイン操作を実行しようとしています。ログインが成功すると、別のページに移動します。 「EnterTimeTrack」 。

- すべてのアクションと検証は、 com.qspiders.Pages パッケージ。

- その特定のページのオブジェクト作成とスクリプトの実行は、 com.qspiders.Tests パッケージ

リポジトリの作成
ステップ1: リポジトリを作成するには、プロジェクトが保存されているフォルダに移動し、 TortoiseSVNを右クリックします と選択します 「ここにリポジトリを作成」 オプション。

ステップ2: リポジトリの作成は、指定されたパスで正常に実行されます。

ステップ3: フレームワーク(POM_Framework)の作成でアイコンの変更を確認できます。

フレームワークをリポジトリにプッシュする
ステップ1: プロジェクトを右クリックして、 チーム->プロジェクトの共有 。

ステップ2: 選択 SVN (次へ)をクリックします。

ステップ3: 選択する 「新しいリポジトリの場所を作成する」 (次へ)をクリックします。

ステップ4: リポジトリ作成用に指定したURLを入力し、( 終了 ボタン。

ステップ5: フレームワークがリポジトリフォルダーに正常に追加されました。

SVNチェックアウト
以下の手順に従って、プロジェクトフォルダPOM_Frameworkをチェックアウトしようとしています。
ステップ1: フォルダパスの外側を右クリックして、 SVNチェックアウト 。

ステップ2: リポジトリパスを選択し、(OK)をクリックします。

ステップ3: 上記のパスでプロジェクトフォルダが正常にチェックアウトされ、リビジョン番号が自動的に設定されます。

コミット :以下のコードがLoginTests.javaファイルに追加されており、リポジトリにコミットしようとしています。
ソースコード:
Package com.qspider.Tests; Public class LoginTests { Public static void main(String args()) { WebDriver driver = new FirefoxDriver(); driver.get('file:///E:/Uma/Selenium%20Programs/mypage.html'); WebElement txtFirstName = driver.findElement(By.id('txtfirstname')); txtFirstName.sendKeys('Uma'); WebElement txtLastName = driver.findElement(By.name('txtLastname')); txtLastName.sendKeys('Srinivasan'); WebElement txtPassword = driver.findElement(By.className('pi')); txtPassword.sendKeys('UmaPassword'); driver.findElement(By.tagName('a')).click(); driver.navigate().back() } } ステップ1: プロジェクトを右クリックして、 チーム->コミット 。

ステップ3: これで、ファイル/フォルダーはリポジトリに正常にチェックインしています。

なぜSVNが必要なのですか?
Selenium自動化プロジェクトを開発中であるとします。このプロジェクトに取り組んでいるチームメンバーが3人いるとしましょう:テスターA、テスターB、テスターC。
ここで、作成する必要のある自動化テストスクリプトが15個あると仮定します。したがって、これら3人のチームメートは、5つのスクリプトをそれぞれに分割し、自動化を開始することにしました。これで、最終的に、すべてのコードがマージされ、最終的なコードが作成されます。下の図の青い円形は、最終的にマージされたコードを表しています。
「テスターA」が自分のコードに修正を加えることにした場合、次の図に示すように修正できるように、マージされたコード全体をローカルワークスペースに取り込む必要があります。ワークスペースとは、単純なSeleniumプロジェクトを意味します。

同様に、「テスターB」も、テストケースに変更を加える場合は、コード全体をワークスペースに取り込む必要があります。

しかし、発生する問題は、すべての人が異なるバージョンのワークスペースを持つようになることです。 「テスターA」が自分のワークスペースで行った変更は、以下に示すように「テスターB」が行ったワークスペースには表示されません。チームメンバー間でワークスペースの同期は行われません。

アンドロイドのための最高の無料のmp3音楽ダウンローダー
新しいチームメンバーが参加し、ローカルワークスペースをセットアップしたい場合、どのテスターが彼にワークスペースを与えるべきかについて競合が発生しますか?したがって、混乱が生じます。ここでは、3人のテスターについて話していますが、多くのテスターで構成される大規模な自動化プロジェクトに取り組んでいる場合はどうでしょうか。
したがって、これらのコード同期の問題を解決し、チームの全員が同じページにいることを確認するために、SubversionSVNを使用します。
市場には、ソースコード管理に役立つ他の多くのツールがあります。 CVS(Concurrent Versioning System)、RCS(Revision Control System)、Gitのように無料(オープンソース)のものはほとんどありません。 RationalClearCaseのようにライセンスされているものもあります。
SVNリポジトリとは何ですか?それは何をしますか?
SVNリポジトリは、プロジェクトやソフトウェアのバージョンを制御するための管理システムを提供します。
したがって、一元化されたサーバーリポジトリが必要です(サーバーはWindows、Unix、Linuxベースなど)。最終的にマージされたコードをこのサーバーに配置します。
ここで、「テスターA」が、リポジトリと呼ばれる集中型サーバーからコードをチェックアウトするとします。コードに必要な変更を加えた後、更新されたコードにチェックインしてリポジトリに戻します。これで、「テスターB」は、コードをチェックアウトすると、リポジトリから最新のコードを取得します。
同様に、全員がそれぞれの変更を行ってから、リポジトリ内のコードを更新(チェックイン)します。
したがって、全員が同期していて、同じページにいます。

結論
このチュートリアルは、SVNの基本的な概念を理解するのに役立ちました。 SVNの基本的な用語から始めて、インストール、プラグイン構成、フレームワーク設計、およびリポジトリー作成に移りました。また、リポジトリとは何か、そしてそれが何をするのかを見てきました。
最後に、フレームワークをリポジトリとファイルのチェックアウトとコミットにプッシュする方法を学びました。
次のチュートリアルでは、独自の無料リポジトリを設定する方法を説明します。