diff --git a/changelogs/changelog-2.txt b/changelogs/changelog-2.txt
index 51cd591..4700665 100644
--- a/changelogs/changelog-2.txt
+++ b/changelogs/changelog-2.txt
@@ -8,49 +8,9 @@
 Now the Subversive project was moved to Eclipse.org and new version numbers was introduced. 
 Change Log's for older versions still present in this file.
 
-Version 2.0.0.I20140609-1700 [09 June 2014]
-
-Features:
- * Document SVN API calls (bug 417770)
- 
-Fixes:
- * Refreshing a folder shared with SVN should force Subversive to refresh its state, even if the .svn folder is outside that folder (bug 435601)
- * Update SVN Cache locks the work space (bug 436727)
- 
---------------------------------------------------------------------------------
-
-Version 2.0.0.I20140519-1700 [19 May 2014]
+Version 1.1.3.I20140206-1700 [06 February 2014]
 
 Fixes:
- * If performing changes via external program, Subversive does not show actual status (bug 430056)
- * Delete file from SVN not work always (bug 434944)
- * Java Refactoring + SVN: Selecting "Cancel" in resource locking dialog leads to empty error dialog (bug 433208)
- 
---------------------------------------------------------------------------------
-
-Version 2.0.0.I20140501-1700 [01 May 2014]
-
-Features:
- * Add support for Eclipse-SourceReferences header (bug 315011)
-   + special thanks to Michael Schaufelberger
-
-Fixes:
- * Subversive crashes ID-PPJQ5 (bug 432930)
- * ArrayOutOfBoundsException in IgnoreMethodPanel [ID-MFS28] (bug 433287)
- * ResourceException in SaveProjectMetaOperation [ID-IE0RW] (bug 432177)
- * Subversive produces unnecessary SVN error log entries for eclipse projects. (bug 431237)
- * A virtual folder in project will cause "The resource is inaccessible" (bug 430349)
- 
---------------------------------------------------------------------------------
-
-Version 2.0.0.I20140309-1700 [09 March 2014]
-
-Features:
- * Allow freeform in SVN:IGNORE (bug 427577)
-
-Fixes:
- * Improve bug reporting code in SVNUtility.getWCRoot [ID-PH38V] (bug 428141)
- * NullPointerException in "Merge properties" (bug 428253)
  * NPE in EditTreeConflictsPanel [ID-LZRIO] (bug 425263)
  * Ignored files shown as outgoing additions (bug 392750)
  * There're unnecessary accesses to the file system while loading information on versioned resources (bug 427184)
@@ -58,15 +18,14 @@
  * GetPropertiesOperation fails for deleted resource with SVN Kit 1.8.3 connector (bug 427093)
  * SVN 1.7 working copy format detection fails with SVN 1.8.3 connector (bug 427092)
  * Cannot commit package deletion (greyed out) (bug 426706)
+ * Exception in "Extract All" after resource were moved [ID-ALWO7] (bug 422453)
+ * Eclipse freezes when synchronizing with SVN repository (bug 417832)
  
 --------------------------------------------------------------------------------
 
-Version 2.0.0.I20131101-1700 [01 November 2013]
+Version 1.1.2.I20131116-1700 [16 November 2013]
 
 Features:
- * Update SVN operations framework in order to support SVN 1.8 API (bug 423701)
- * Provide access to SVN repository management API (bug 417769)
- * Introduce SVN 1.8 API support (bug 417768)
  * "Treat replacement as edit" should be true by default and should be represented in preferences (bug 419850)
 
 Fixes:
diff --git a/changelogs/changelog.txt b/changelogs/changelog.txt
index 4700665..51cd591 100644
--- a/changelogs/changelog.txt
+++ b/changelogs/changelog.txt
@@ -8,9 +8,49 @@
 Now the Subversive project was moved to Eclipse.org and new version numbers was introduced. 
 Change Log's for older versions still present in this file.
 
-Version 1.1.3.I20140206-1700 [06 February 2014]
+Version 2.0.0.I20140609-1700 [09 June 2014]
+
+Features:
+ * Document SVN API calls (bug 417770)
+ 
+Fixes:
+ * Refreshing a folder shared with SVN should force Subversive to refresh its state, even if the .svn folder is outside that folder (bug 435601)
+ * Update SVN Cache locks the work space (bug 436727)
+ 
+--------------------------------------------------------------------------------
+
+Version 2.0.0.I20140519-1700 [19 May 2014]
 
 Fixes:
+ * If performing changes via external program, Subversive does not show actual status (bug 430056)
+ * Delete file from SVN not work always (bug 434944)
+ * Java Refactoring + SVN: Selecting "Cancel" in resource locking dialog leads to empty error dialog (bug 433208)
+ 
+--------------------------------------------------------------------------------
+
+Version 2.0.0.I20140501-1700 [01 May 2014]
+
+Features:
+ * Add support for Eclipse-SourceReferences header (bug 315011)
+   + special thanks to Michael Schaufelberger
+
+Fixes:
+ * Subversive crashes ID-PPJQ5 (bug 432930)
+ * ArrayOutOfBoundsException in IgnoreMethodPanel [ID-MFS28] (bug 433287)
+ * ResourceException in SaveProjectMetaOperation [ID-IE0RW] (bug 432177)
+ * Subversive produces unnecessary SVN error log entries for eclipse projects. (bug 431237)
+ * A virtual folder in project will cause "The resource is inaccessible" (bug 430349)
+ 
+--------------------------------------------------------------------------------
+
+Version 2.0.0.I20140309-1700 [09 March 2014]
+
+Features:
+ * Allow freeform in SVN:IGNORE (bug 427577)
+
+Fixes:
+ * Improve bug reporting code in SVNUtility.getWCRoot [ID-PH38V] (bug 428141)
+ * NullPointerException in "Merge properties" (bug 428253)
  * NPE in EditTreeConflictsPanel [ID-LZRIO] (bug 425263)
  * Ignored files shown as outgoing additions (bug 392750)
  * There're unnecessary accesses to the file system while loading information on versioned resources (bug 427184)
@@ -18,14 +58,15 @@
  * GetPropertiesOperation fails for deleted resource with SVN Kit 1.8.3 connector (bug 427093)
  * SVN 1.7 working copy format detection fails with SVN 1.8.3 connector (bug 427092)
  * Cannot commit package deletion (greyed out) (bug 426706)
- * Exception in "Extract All" after resource were moved [ID-ALWO7] (bug 422453)
- * Eclipse freezes when synchronizing with SVN repository (bug 417832)
  
 --------------------------------------------------------------------------------
 
-Version 1.1.2.I20131116-1700 [16 November 2013]
+Version 2.0.0.I20131101-1700 [01 November 2013]
 
 Features:
+ * Update SVN operations framework in order to support SVN 1.8 API (bug 423701)
+ * Provide access to SVN repository management API (bug 417769)
+ * Introduce SVN 1.8 API support (bug 417768)
  * "Treat replacement as edit" should be true by default and should be represented in preferences (bug 419850)
 
 Fixes:
diff --git a/changelogs/releasenotes-kepler.txt b/changelogs/releasenotes-kepler.txt
new file mode 100644
index 0000000..9dc389a
--- /dev/null
+++ b/changelogs/releasenotes-kepler.txt
@@ -0,0 +1,48 @@
+********************************************************************************
+*                          Subversive Release Notes                            *
+*                                                                              *
+* Subversive - a brand new Eclipse Client for Subversion (SVN)                 *
+* See details at http://www.eclipse.org/subversive                             *
+********************************************************************************
+
+Version 1.1.3.I20140206-1700 release date: 06 February 2014
+
+1. What's New
+
+   The version is 1.1.3 service release. 
+   
+   Changes comparatively to the previous release version are listed below. The full list of 
+   changes you can find in Change Log.
+		
+	Fixes:
+	 * NPE in EditTreeConflictsPanel [ID-LZRIO] (bug 425263)
+	 * Ignored files shown as outgoing additions (bug 392750)
+	 * There're unnecessary accesses to the file system while loading information on versioned resources (bug 427184)
+	 * There is an exception in Synchronize View when handling an obstructed resource of unexpected kind (dir instead of file) (bug 427183)
+	 * GetPropertiesOperation fails for deleted resource with SVN Kit 1.8.3 connector (bug 427093)
+	 * SVN 1.7 working copy format detection fails with SVN 1.8.3 connector (bug 427092)
+	 * Cannot commit package deletion (greyed out) (bug 426706)
+	 * Exception in "Extract All" after resource were moved [ID-ALWO7] (bug 422453)
+	 * Eclipse freezes when synchronizing with SVN repository (bug 417832)
+	
+	
+2. Information
+
+2.1. System Requirements
+
+   Subversive requires JDK 1.5 or higher and supports following versions of Eclipse:
+    * 3.6
+    * 3.7
+    * 3.8
+    * 4.2
+    * 4.3
+   
+   Subversive supports 
+    Subversion version 1.4-1.6 with SVN Kit 1.3.8 and JavaHL 1.6.15,
+    Subversion version 1.7 with SVN Kit 1.7.11 and JavaHL 1.7.9, 
+    Subversion version 1.8 with SVN Kit 1.8.3 and JavaHL 1.8.5
+
+2.2 Known issues
+
+	* "Deadlock when JNA is loading" problem on Mac OS X [using SVN Kit 1.3.x/1.7.x connector]
+	* Deleting and replacing a resource is a SVN delete/add instead of a modify
\ No newline at end of file
diff --git a/changelogs/releasenotes.txt b/changelogs/releasenotes.txt
index 9dc389a..5dc38c0 100644
--- a/changelogs/releasenotes.txt
+++ b/changelogs/releasenotes.txt
@@ -5,16 +5,38 @@
 * See details at http://www.eclipse.org/subversive                             *
 ********************************************************************************
 
-Version 1.1.3.I20140206-1700 release date: 06 February 2014
+Version 2.0.0.I20140609-1700 release date: 09 June 2014
 
 1. What's New
 
-   The version is 1.1.3 service release. 
+   The version is 2.0.0 release, that includes major SVN integration API changes. 
    
    Changes comparatively to the previous release version are listed below. The full list of 
    changes you can find in Change Log.
 		
+	Features:
+	 * Document SVN API calls (bug 417770)
+	 * Add support for Eclipse-SourceReferences header (bug 315011)
+	   + special thanks to Michael Schaufelberger
+	 * Allow freeform in SVN:IGNORE (bug 427577)
+	 * Update SVN operations framework in order to support SVN 1.8 API (bug 423701)
+	 * Provide access to SVN repository management API (bug 417769)
+	 * Introduce SVN 1.8 API support (bug 417768)
+	 * "Treat replacement as edit" should be true by default and should be represented in preferences (bug 419850)
+
 	Fixes:
+	 * Update SVN Cache locks the work space (bug 436727)
+	 * Refreshing a folder shared with SVN should force Subversive to refresh its state, even if the .svn folder is outside that folder (bug 435601)
+	 * If performing changes via external program, Subversive does not show actual status (bug 430056)
+	 * Delete file from SVN not work always (bug 434944)
+	 * Java Refactoring + SVN: Selecting "Cancel" in resource locking dialog leads to empty error dialog (bug 433208)
+	 * Subversive crashes ID-PPJQ5 (bug 432930)
+	 * ArrayOutOfBoundsException in IgnoreMethodPanel [ID-MFS28] (bug 433287)
+	 * ResourceException in SaveProjectMetaOperation [ID-IE0RW] (bug 432177)
+	 * Subversive produces unnecessary SVN error log entries for eclipse projects. (bug 431237)
+	 * A virtual folder in project will cause "The resource is inaccessible" (bug 430349)
+	 * Improve bug reporting code in SVNUtility.getWCRoot [ID-PH38V] (bug 428141)
+	 * NullPointerException in "Merge properties" (bug 428253)
 	 * NPE in EditTreeConflictsPanel [ID-LZRIO] (bug 425263)
 	 * Ignored files shown as outgoing additions (bug 392750)
 	 * There're unnecessary accesses to the file system while loading information on versioned resources (bug 427184)
@@ -22,27 +44,33 @@
 	 * GetPropertiesOperation fails for deleted resource with SVN Kit 1.8.3 connector (bug 427093)
 	 * SVN 1.7 working copy format detection fails with SVN 1.8.3 connector (bug 427092)
 	 * Cannot commit package deletion (greyed out) (bug 426706)
-	 * Exception in "Extract All" after resource were moved [ID-ALWO7] (bug 422453)
-	 * Eclipse freezes when synchronizing with SVN repository (bug 417832)
+	 * Button position should comply Linux "convention": positive button on the right-most (bug 422826)
+	 * NPE in PropertyCompareInput [ID-KULS6] (bug 422623)
+	 * Connectors discovery fails with exceptions on MacOS X (bug 418768)
+	 * Synchronize view mistakingly treats workspace root as versioned resource [ID-NYQUI] (bug 417835)
+	 * FileNotFoundException in FileUtility.copyFile [ID-JJCVG] (bug 421251)
+	 * Deleting and replacing a resource is a SVN delete/add instead of a modify (bug 276018)
+		+ special thanks to Forest Johnson
+	 * Undo Delete result in replaced content (bug 419368)
+	 * NPE when using "Create Patch" in history view (bug 419563)
+	 * Subversive doesn't allow to use IPv6 addresses as host names (bug 418301)
 	
 	
 2. Information
 
 2.1. System Requirements
 
-   Subversive requires JDK 1.5 or higher and supports following versions of Eclipse:
-    * 3.6
-    * 3.7
-    * 3.8
+   Subversive requires JDK 1.6 or higher and supports following versions of Eclipse:
     * 4.2
     * 4.3
+    * 4.4
    
    Subversive supports 
-    Subversion version 1.4-1.6 with SVN Kit 1.3.8 and JavaHL 1.6.15,
-    Subversion version 1.7 with SVN Kit 1.7.11 and JavaHL 1.7.9, 
-    Subversion version 1.8 with SVN Kit 1.8.3 and JavaHL 1.8.5
+    Migration for Subversion below version 1.6 to version 1.7 and higher,
+    Subversion version 1.7 with SVN Kit 1.7.13 and JavaHL 1.7.9,
+    Subversion version 1.8 with SVN Kit 1.8.5 and JavaHL 1.8.8
 
 2.2 Known issues
 
-	* "Deadlock when JNA is loading" problem on Mac OS X [using SVN Kit 1.3.x/1.7.x connector]
-	* Deleting and replacing a resource is a SVN delete/add instead of a modify
\ No newline at end of file
+	* "Deadlock when JNA is loading" problem on Mac OS X [using SVN Kit 1.7.13 connector]
+	
\ No newline at end of file
diff --git a/latest-releases.php b/latest-releases.php
index 619f55b..8bd727c 100644
--- a/latest-releases.php
+++ b/latest-releases.php
@@ -27,29 +27,41 @@
 			This page includes information about the latest stable release of Subversive and the Early Access Build with all the latest features.
 		</p>
 		$notes
-		<h2>Kepler (Eclipse 4.3) Release</h2>
+		<h2>Luna (Eclipse 4.4) Release</h2>
 		<p>
-			This is the stable Subversive plug-in release that is a part of Eclipse Kepler Simultaneous Release. The Subversive plug-in is included into Kepler Update Site, so you can install Subversive directly from Eclipse Kepler.
+			This is the stable Subversive plug-in release that is a part of Eclipse Luna Simultaneous Release. The Subversive plug-in is included into Luna Update Site, so you can install Subversive directly from Eclipse Luna.
 		</p>
 		<p>
-			<b>Release Date:</b> 27 May 2013<br/>
-			<b>Version:</b> 1.1.0.I20130527-1700 (<a href="/subversive/changelogs/releasenotes.txt">Release notes</a>)
+			<b>Release Date:</b> 09 June 2014<br/>
+			<b>Version:</b> 2.0.0.I20140609-1700 (<a href="/subversive/changelogs/releasenotes.txt">Release notes</a>)
 		</p>
 		<p>
 			<b>Update Site:</b><br/>
-			The Subversive plug-in is an integral part of the Eclipse Kepler update site. To install Subversive, select the Kepler update site in Eclipse Update Manager, then select the Subversive features under the Collaboration section of the update site (check the <a href="/subversive/installation-instructions.php">installation instructions</a>).
+			The Subversive plug-in is an integral part of the Eclipse Luna update site. To install Subversive, select the Luna update site in Eclipse Update Manager, then select the Subversive features under the Collaboration section of the update site (check the <a href="/subversive/installation-instructions.php">installation instructions</a>).
 		</p>
 		<p>
 			<b>Archived Update Site:</b><br/>
-			<a href="http://www.eclipse.org/downloads/download.php?file=/technology/subversive/1.1/builds/kepler/Subversive-1.1.0.I20130527-1700.zip">Subversive-1.1.0.I20130527-1700.zip</a>
+			<a href="http://www.eclipse.org/downloads/download.php?file=/technology/subversive/2.0/builds/luna/Subversive-2.0.0.I20140609-1700.zip">Subversive-2.0.0.I20140609-1700.zip</a>
 		</p>
 		<h2>Latest Stable Build</h2>
 		<p>
 			This is the most up-to-date version of the Subversive plug-in. It's aimed to provide you with access to the latest Subversive features before they become available in the Subversive build included into the yearly Eclipse Simultaneous Release.
 		</p>
 		<p>
+			<b>Release Date:</b> 09 June 2014<br/>
+			<b>Version:</b> 2.0.0.I20140609-1700 (<a href="/subversive/changelogs/changelog.txt">Change log</a>)		
+		</p>
+		<p>
+			<b>Update Site:</b><br/>	
+			<a href="http://download.eclipse.org/technology/subversive/2.0/update-site/">http://download.eclipse.org/technology/subversive/2.0/update-site/</a>		
+		</p>
+		<p>
+			<b>Archived Update Site:</b><br/>
+			<a href="http://www.eclipse.org/downloads/download.php?file=/technology/subversive/2.0/builds/Subversive-2.0.0.I20140609-1700.zip">Subversive-2.0.0.I20140609-1700.zip</a>
+		</p>	
+		<p>
 			<b>Release Date:</b> 06 February 2014<br/>
-			<b>Version:</b> 1.1.3.I20140206-1700 (<a href="/subversive/changelogs/changelog.txt">Change log</a>)		
+			<b>Version:</b> 1.1.3.I20140206-1700 (<a href="/subversive/changelogs/changelog-2.txt">Change log</a>)		
 		</p>
 		<p>
 			<b>Update Site:</b><br/>	
@@ -61,7 +73,7 @@
 		</p>	
 		<p>
 			<b>Early Access build:</b> 09 June 2014<br/>
-			<b>Version:</b> 2.0.0.I20140609-1700 (<a href="/subversive/changelogs/changelog-2.txt">Change log</a>)		
+			<b>Version:</b> 2.0.0.I20140609-1700 (<a href="/subversive/changelogs/changelog.txt">Change log</a>)		
 		</p>
 		<p>
 			<b>Update Site:</b><br/>	
diff --git a/previous-releases.php b/previous-releases.php
index 5f597b7..daa2f0e 100644
--- a/previous-releases.php
+++ b/previous-releases.php
@@ -31,6 +31,22 @@
 		<p>
 			If need to update Subversive from 0.7.x to the 1.0.0 version, uninstall the previously installed Subversive 0.7.x plug-in version first. Otherwise during the installation process you'll be blocked by the old connectors version that is incompatible with the 1.0.0 release and couldn't be installed simultaneously with the main plug-in due to the installation UI restrictions.
 		</p>		
+		<h2>Kepler (Eclipse 4.3) Release</h2>
+		<p>
+			This is the stable Subversive plug-in release that is a part of Eclipse Kepler Simultaneous Release. The Subversive plug-in is included into Kepler Update Site, so you can install Subversive directly from Eclipse Kepler.
+		</p>
+		<p>
+			<b>Release Date:</b> 06 February 2014<br/>
+			<b>Version:</b> 1.1.3.I20140206-1700 (<a href="/subversive/changelogs/releasenotes-kepler.txt">Release notes</a>)
+		</p>
+		<p>
+			<b>Update Site:</b><br/>
+			The Subversive plug-in is an integral part of the Eclipse Kepler update site. To install Subversive, select the Kepler update site in Eclipse Update Manager, then select the Subversive features under the Collaboration section of the update site (check the <a href="/subversive/installation-instructions.php">installation instructions</a>).
+		</p>
+		<p>
+			<b>Archived Update Site:</b><br/>
+			<a href="http://www.eclipse.org/downloads/download.php?file=/technology/subversive/1.1/builds/juno/Subversive-1.1.3.I20140206-1700.zip">Subversive-1.1.3.I20140206-1700.zip</a>
+		</p>
 		<h2>Juno (Eclipse 3.8/4.2) Release</h2>
 		<p>
 			This is the stable Subversive plug-in release that is a part of Eclipse Juno Simultaneous Release. The Subversive plug-in is included into Juno Update Site, so you can install Subversive directly from Eclipse Juno.
@@ -47,38 +63,6 @@
 			<b>Archived Update Site:</b><br/>
 			<a href="http://www.eclipse.org/downloads/download.php?file=/technology/subversive/1.0/builds/juno/Subversive-1.0.0.I20130122-1700.zip">Subversive-1.0.0.I20130122-1700.zip</a>
 		</p>
-		<h2>Indigo (Eclipse 3.7) Release</h2>
-		<p>
-			This is the Subversive plug-in release that is a part of the Eclipse Indigo Simultaneous Release. The Subversive plug-in is included into Indigo Update Site, so you can install Subversive directly from Eclipse Indigo.
-		</p>
-		<p>
-			<b>Release Date:</b> 19 August 2011<br/>
-			<b>Version:</b> 0.7.9.I20110819-1900
-		</p>
-		<p>
-			<b>Update Site:</b><br/>
-			The Subversive plug-in is an integral part of the Eclipse Indigo update site. To install Subversive, select the Indigo update site in Eclipse Update Manager, then select the Subversive features under the Collaboration section of the update site (check the <a href="/subversive/installation-instructions.php">installation instructions</a>).			
-		</p>
-		<p>
-			<b>Archived Update Site:</b><br/>
-			<a href="http://www.eclipse.org/downloads/download.php?file=/technology/subversive/0.7/builds/indigo/Subversive-incubation-0.7.9.I20110819-1700.zip">Subversive-incubation-0.7.9.I20110819-1700.zip</a>
-		</p>
-		<h2>Helios (Eclipse 3.6) Release</h2>
-		<p>
-			This is the Subversive plug-in release that is a part of the Eclipse Helios Simultaneous Release. The Subversive plug-in is included into Helios Update Site, so you can install Subversive directly from Eclipse Helios.
-		</p>
-		<p>
-			<b>Release Date:</b> 23 June 2010<br/>
-			<b>Version:</b> 0.7.9.I20100512-1900
-		</p>
-		<p>
-			<b>Update Site:</b><br/>
-			The Subversive plug-in is an integral part of the Eclipse Helios update site. To install Subversive, select the Helios update site in Eclipse Update Manager, then select the Subversive features under the Collaboration section of the update site (check the <a href="/subversive/installation-instructions.php">installation instructions</a>).
-		</p>
-		<p>
-			<b>Archived Update Site:</b><br/>
-			<a href="http://www.eclipse.org/downloads/download.php?file=/technology/subversive/0.7/builds/Subversive-incubation-0.7.9.I20100512-1900.zip">Subversive-incubation-0.7.9.I20100512-1900.zip</a>
-		</p>
 	</div>
 	
 	<div id="rightcolumn">
