<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | |
<html> | |
<head> | |
<meta http-equiv="content-type" content="text/html; charset=UTF-8"> | |
<meta name="author" content="troy.giunipero@sun.com"> | |
<meta name="description" content="A preview of Subversion Features in NetBeans IDE 6.9 and higher"> | |
<meta name="keywords" content="NetBeans, IDE, integrated development environment, Subversion, | |
CVS, versioning software, open source, developers, collaborate"> | |
<link rel="stylesheet" type="text/css" href="../../../netbeans.css"> | |
<link rel="stylesheet" type="text/css" href="../../../lytebox.css" media="screen"> | |
<script type="text/javascript" src="../../../images_www/js/lytebox-compressed.js"></script> | |
<title>Using Subversion Support in NetBeans IDE</title> | |
</head> | |
<body> | |
<!-- | |
Copyright (c) 2009 - 2014, Oracle and/or its affiliates. All rights reserved. | |
--> | |
<h1>Using Subversion Support in NetBeans IDE</h1> | |
<p>NetBeans IDE provides tight integration with Subversion client versions 1.6.x and | |
higher. The IDE's Subversion support is designed to help streamline the development | |
process for groups working from a shared repository, enabling you to perform versioning | |
tasks directly from your project system within the IDE.</p> | |
<p>This document demonstrates how to perform basic versioning tasks in the IDE by | |
guiding you through the standard workflow when using versioning software.</p> | |
<p>Please note that NetBeans Subversion support <em>does not</em> work when used | |
with Cygwin.</p> | |
<p><a href="http://subversion.tigris.org/">Subversion</a> is a popular open source | |
version control system that is becoming the next-generation replacement for CVS. | |
It provides various improved features, for example:</p> | |
<ul> | |
<li>Full version history is provided for renamed, moved or removed files.</li> | |
<li>Commit operations are atomic, meaning that a collection of modifications | |
either enter the repository completely or, in the event of connection failure, | |
not at all.</li> | |
<li>Versioning of project metadata is provided.</li> | |
</ul> | |
<p><strong>Contents</strong></p> | |
<img src="../../../images_www/articles/73/netbeans-stamp-80-74-73.png" | |
class="stamp" | |
alt="Content on this page applies to NetBeans IDE 6.9 and higher" | |
title="Content on this page applies to the NetBeans IDE 6.9 and higher"> | |
<ul class="toc"> | |
<li><a href="#settingUp">Setting up Subversion</a> | |
<ul> | |
<li><a href="#getting">Getting the Software</a></li> | |
<li><a href="#specifying">Specifying the Path to the Subversion Executable</a></li> | |
<li><a href="#ensuring">Ensuring you have a Repository to Connect to</a></li> | |
</ul></li> | |
<li><a href="#synchronizing">Synchronizing Local Files with a Repository</a> | |
<ul> | |
<li><a href="#opening">Opening a Subversion Project in the IDE</a></li> | |
<li><a href="#checking">Checking out Files from a Repository</a></li> | |
<li><a href="#importing">Importing Files into a Repository</a></li> | |
</ul></li> | |
<li><a href="#editing">Editing Sources</a> | |
<ul> | |
<li><a href="#viewingChanges">Viewing Changes in the Source Editor</a></li> | |
<li><a href="#viewingFileStatus">Viewing File Status Information</a></li> | |
<li><a href="#comparing">Comparing File Revisions</a></li> | |
<li><a href="#merging">Merging File Revisions</a></li> | |
</ul></li> | |
<li><a href="#committing">Committing Sources to a Repository</a> | |
<ul> | |
<li><a href="#updating">Updating Local Copies</a></li> | |
<li><a href="#resolving">Resolving Conflicts</a></li> | |
<li><a href="#performing">Performing the Commit</a></li> | |
</ul></li> | |
<li><a href="#summary">Summary</a></li> | |
<li><a href="#seeAlso">See Also</a></li> | |
</ul> | |
<p><strong>To complete this tutorial, you need the following software and resources.</strong></p> | |
<table> | |
<tbody> | |
<tr> | |
<th class="tblheader" scope="col">Software or Resource</th> | |
<th class="tblheader" scope="col">Version Required</th> | |
</tr> | |
<tr> | |
<td class="tbltd1"><a href="https://netbeans.org/downloads/index.html">NetBeans | |
IDE</a></td> | |
<td class="tbltd1">version 6.9, 7.0, 7.1, 7.2, 7.3, 7.4, or 8.0 </td> | |
</tr> | |
<tr> | |
<td class="tbltd1"><a href="http://java.sun.com/javase/downloads/index.jsp">Java | |
Development Kit (JDK)</a></td> | |
<td class="tbltd1">version 6, 7, or 8 </td> | |
</tr> | |
<tr> | |
<td class="tbltd1"><a href="http://www.open.collab.net/downloads/netbeans/">Subversion client software</a></td> | |
<td class="tbltd1">1.6.x or more recent</td> | |
</tr> | |
</tbody> | |
</table> | |
<p class="notes"><strong>Note for Windows users: </strong>You can install a bundled Subversion client as a NetBeans IDE plugin. Go to Tools > Plugins, open the Available Plugins tab, and install the Bundled Subversion Client for Windows.</p> | |
<a name="settingUp"></a> | |
<h2>Setting up Subversion</h2> | |
<p>Before you can take advantage of the IDE's Subversion support, you need to | |
have Subversion client software installed on your computer. The IDE's Subversion | |
support works by interacting with the Subversion client to carry out versioning | |
commands. Depending on your system, and whether you install the Subversion | |
client to a non-default location, you may also need to register the path to the | |
Subversion executable in the IDE. Finally, you need to make sure that you have a | |
Subversion repository to connect to.</p> | |
<ul> | |
<li><a href="#getting">Getting the Software</a></li> | |
<li><a href="#specifying">Specifying the Path to the Subversion Executable</a></li> | |
<li><a href="#ensuring">Ensuring you have a Repository to Connect to</a></li> | |
</ul> | |
<div class="indent"> | |
<a name="getting"></a> | |
<h3>Getting the Software</h3> | |
<p>Make sure you have the following software installed on your computer:</p> | |
<ul> | |
<li>NetBeans IDE (<a href="https://netbeans.org/downloads/index.html">download</a>)</li> | |
<li>Java SE Development Kit (<a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html">download</a>)</li> | |
<li>Subversion client software (<a href="http://www.open.collab.net/downloads/netbeans/">download</a>)</li> | |
</ul> | |
<a name="specifying"></a> | |
<h3>Specifying the Path to the Subversion Executable</h3> | |
<p>NetBeans IDE automatically tries to identify the location of the Subversion | |
executable file by using the <code>$PATH</code> system variable on your computer. | |
Depending on your platform however, or whether you installed the Subversion | |
client to a different location, it may be necessary to specify the path to | |
the executable file explicitly.</p> | |
<p>By default, the Subversion executable file is installed in the <code>/usr/bin</code> | |
or <code>/usr/local/bin/</code> folder on UNIX and OS X machines, and in | |
<code>C:\Program Files\Subversion\bin\</code> (or <code>C:\Program Files\CollabNet | |
Subversion\bin\</code>) for Windows.</p> | |
<p class="tips">On *nix-based machines, you can verify the location of the Subversion | |
executable by typing <code>which svn</code> into a terminal window. On Windows | |
machines, you can perform a system-wide search for <code>svn.exe</code>.</p> | |
<p>To set the path to the Subversion executable file in the IDE:</p> | |
<ol> | |
<li>Choose Tools > Options (NetBeans > Preferences on OS X) from the main | |
menu. The Options dialog opens.</li> | |
<li>Select the Miscellaneous icon along the top of the dialog, then click the | |
Versioning tab. In the left pane under Versioning Systems, select Subversion. | |
User-defined options for Subversion display in the main window of the dialog: | |
<p class="align-center"><a name="svnOptions"></a> | |
<a href="../../../images_www/articles/73/ide/subversion/svn-options.png" rel="lytebox" | |
title="Subversion Options dialog featuring user-defined options"> | |
<img src="../../../images_www/articles/73/ide/subversion/svn-options-small.png" class="margin-around" | |
alt="Subversion Options dialog featuring user-defined options"></a></p></li> | |
<li>In the Specify the SVN Home Folder text field, either type in the path to the | |
executable file or click Browse to navigate to it on your system. Note that | |
you need not <em>include</em> the Subversion executable file in the path.</li> | |
<li>Click OK, then restart the IDE to allow changes to take effect.</li> | |
</ol> | |
<a name="ensuring"></a> | |
<h3>Ensuring you have a Repository to Connect to</h3> | |
<p>Before invoking Subversion actions from the IDE, make sure you have access to a Subversion | |
repository. The IDE <em>does not</em> provide support for creating Subversion repositories | |
as this is not a frequently used action (In a production environment a repository is only | |
created once, after the design of the repository layout has been determined.) and moreover | |
it requires administrative commands.</p> | |
<p>If you would like to experiment with the IDE's support using a local repository, | |
you can create one using the <a href="http://svnbook.red-bean.com/en/1.1/ch09s02.html">svnadmin | |
tool</a>, which is included in the Subversion client software.</p> | |
<p>To create a Subversion repository on your computer, use <code>svnadmin create</code>. From a command-line | |
prompt, type in the following:</p> | |
<pre class="examplecode">svnadmin create /path/to/your/repository</pre> | |
<p>For more information, see: <a href="http://svnbook.red-bean.com/en/1.1/ch05s02.html">http://svnbook.red-bean.com/en/1.1/ch05s02.html</a>.</p> | |
</div> | |
<p class="align-center"><a href="#top">top</a></p> | |
<a name="synchronizing"></a> | |
<h2>Synchronizing Local Files with a Repository</h2> | |
<p>When using a version control system, you work by synchronizing local files | |
with a repository, making changes to your local copy, then committing them to | |
the repository. The following list describes various ways you can synchronize | |
a project in NetBeans IDE, depending on your specific situation:</p> | |
<ul> | |
<li><a href="#opening">Opening a Subversion Project in the IDE</a> </li> | |
<li><a href="#checking">Checking out Files from a Repository</a></li> | |
<li><a href="#importing">Importing Files into a Repository</a></li> | |
</ul> | |
<div class="indent"> | |
<a name="opening"></a> | |
<h3>Opening a Subversion Project in the IDE</h3> | |
<p>If you already have a Subversion versioned project which you have been working | |
with outside of the IDE, you can open it in the IDE and versioning features | |
will automatically become available to you. The IDE scans your open projects | |
and if they contain <code>.svn</code> directories, file status and context-sensitive | |
support automatically becomes active for Subversion versioned projects.</p> | |
<a name="checking"></a> | |
<h3>Checking out Files from a Repository</h3> | |
<p>If you want to connect to a remote repository from the IDE, then check out | |
files and immediately begin working with them, do the following:</p> | |
<ol> | |
<li>In NetBeans IDE, choose Team > Subversion > Checkout from | |
the main menu. The Checkout wizard opens. | |
<br> | |
<br> | |
<strong class="notes">Note: </strong>The IDE's drop-down menus are context-sensitive, | |
i.e. the available options depend on the item currently selected. | |
Therefore, if you are already working within a Subversion project, | |
you can choose Versioning > Checkout from the main menu.</li> | |
<li>In the first panel of the wizard, enter a URL that contains the connection | |
protocol and location of the repository you want to connect to. | |
<br><br> | |
<a name="protocolTypes"></a> | |
The IDE supports the following protocol types: | |
<br><br> | |
<table > | |
<tr> | |
<th class="tblheader" scope="col">Protocol</th> | |
<th class="tblheader" scope="col" >Access Method</th> | |
<th class="tblheader" scope="col">Example</th> | |
</tr> | |
<tr> | |
<td class="tbltd1"><strong>file</strong></td> | |
<td class="tbltd1">Direct repository access (on local disk)</td> | |
<td class="tbltd1"><code>file:///repository_path</code></td> | |
</tr> | |
<tr> | |
<td class="tbltd1"><strong>http</strong></td> | |
<td class="tbltd1">Access via WebDAV protocol to a Subversion-aware server</td> | |
<td class="tbltd1"><code>http://hostname/repository_path</code></td> | |
</tr> | |
<tr> | |
<td class="tbltd1"><strong>https</strong></td> | |
<td class="tbltd1">Access via HTTP protocol with SSL encryption</td> | |
<td class="tbltd1"><code>https://hostname/repository_path</code></td> | |
</tr> | |
<tr> | |
<td class="tbltd1"><strong>svn</strong></td> | |
<td class="tbltd1">Access via custom protocol to an <code>svnserve</code> server</td> | |
<td class="tbltd1"><code>svn://hostname/repository_path</code></td> | |
</tr> | |
<tr> | |
<td class="tbltd1"><strong>svn+ssh</strong></td> | |
<td class="tbltd1">Access via SVN protocol through an external SSH tunnel</td> | |
<td class="tbltd1"><code>svn+ssh://hostname/repository_path</code></td> | |
</tr> | |
</table> | |
<br> | |
Depending on the protocol you are using, you may need to enter other | |
information, such as username and password (e.g. for <code>http://</code>, | |
<code>https://</code>, or <code>svn://</code>), or in the case of <code>svn+ssh://</code>, | |
you must supply the command to establish the external tunnel. | |
<br><br> | |
<strong class="notes">Note: </strong>If you are trying to implement certificated authentication | |
with <code>https</code>, see: <a href="http://wiki.netbeans.org/wiki/view/FaqSslUserCert">How | |
to connect to a Subversion repository using user-certified authentication?</a> | |
<br><br> | |
For more help with <code>svn+ssh</code>, see: | |
<a href="http://wiki.netbeans.org/wiki/view/FaqSubversionSSH">How do I | |
set up SSH with Subversion?</a></li> | |
<li>If you are using a proxy, be sure to click the Proxy Configuration button | |
and enter any required information. When you are certain your connection | |
settings to the repository are correct, click Next.</li> | |
<li>In the Folders to Checkout panel of the wizard, specify the folder that | |
you want to check out in the Repository Folder(s) field. If you do not | |
know the name of the folder you want to check out, click the Browse button | |
to view all folders currently maintained in the repository. From the Browse | |
Repository Folders dialog that appears, select any of the listed folders | |
and click OK. The selected folder is then added to the Repository Folder(s) | |
field ('MyProject' entered in screen capture below): | |
<p class="align-center"> | |
<a href="../../../images_www/articles/73/ide/subversion/checkout.png" rel="lytebox" | |
title="Subversion Checkout Wizard: Folders to Checkout panel"> | |
<img src="../../../images_www/articles/73/ide/subversion/checkout-small.png" class="margin-around" | |
alt="Subversion Checkout Wizard: Folders to Checkout panel"></a></p></li> | |
<li>Enter a Revision number in the Repository Revision field, otherwise leave | |
it empty, implying that you want to check out the folder <em>HEAD</em>, or | |
most recent revision.</li> | |
<li>In the Local Folder field, enter a location on your computer where you want | |
files to be checked out to. Leave the Scan for NetBeans Projects after | |
Checkout option selected, then click Finish to initiate the check out | |
action. The IDE checks out the specified sources and the IDE's status bar | |
indicates the progress of the files downloading from the repository to your | |
local working directory. You can also view files as they are being checked | |
out from the Output window (Ctrl-4 on Windows/Cmd-4 on OS X). | |
<br> | |
<br> | |
<strong class="notes">Note: </strong>If the checked out sources contain NetBeans projects, | |
a dialog appears prompting you to open them in the IDE. If the sources do not | |
contain a project, the dialog appears prompting you to create a new project | |
from the sources and then open them in the IDE. If you create a new project | |
for such sources, select the appropriate project category (i.e. in the New | |
Project wizard) and then use the With Existing Sources option within that | |
category.</li> | |
</ol> | |
<a name="importing"></a> | |
<h3>Importing Files into a Repository</h3> | |
<p>Alternately, you can import a project you have been working on in the IDE to | |
a remote repository, then continue to work on it in the IDE after it has | |
become synchronized.</p> | |
<p><strong class="notes">Note: </strong>While you are actually <em>exporting</em> files | |
from your system, the term 'import' is used in version control systems to | |
signify that files are being <em>imported into</em> a repository.</p> | |
<p>To import a project to a repository:</p> | |
<ol> | |
<li>From the Projects window (Ctrl-1 on Windows/Cmd-1 on OS X), select an unversioned project and | |
choose Versioning > Import into Subversion Repository from the | |
node's right-click menu. The Subversion Import wizard opens.</li> | |
<li>In the Subversion Repository panel of the Import wizard, specify the | |
<a href="#protocolTypes">protocol</a> and location of the Subversion | |
repository as defined by the Subversion URL. Depending on your selection, | |
you may need to specify further settings, such as repository username | |
and password, or, in the case of <code>svn+ssh://</code>, you must specify | |
the tunnel command to establish the external tunnel. See the <a | |
href="http://wiki.netbeans.org/wiki/view/NetBeansUserFAQ#section-NetBeansUserFAQ-VersionControlSystems">Subversion | |
User FAQ</a> for further details. Click Next.</li> | |
<li>In the Repository Folder panel, specify the repository folder in which you | |
want to place the project in the repository. A folder containing the name | |
of your project is suggested for you in the Repository Folder text field | |
by default.</li> | |
<li>In the text area beneath Specify the Message, enter a description of the | |
project you are importing into the repository.</li> | |
<li>Click Finish to initiate the import, or optionally, click Next to continue | |
to a third panel that enables you to preview all files that are prepared | |
for import. From this panel, you can choose to exclude individual files | |
from the import (as shown below), or identify the MIME types of files before | |
importing. | |
<p class="align-center"> | |
<a href="../../../images_www/articles/73/ide/subversion/import.png" rel="lytebox" | |
title="Subversion Import Wizard: Files to Import panel"> | |
<img src="../../../images_www/articles/73/ide/subversion/import-small.png" class="margin-around" | |
alt="Subversion Import Wizard: Files to Import panel"></a></p> | |
Upon clicking Finish, the IDE uploads the project files to the repository | |
and the Output window opens to display the progress.</li> | |
</ol> | |
</div> | |
<p class="align-center"><a href="#top">top</a></p> | |
<a name="editing"></a> | |
<h2>Editing Sources</h2> | |
<p>Once you have a Subversion versioned project opened in the IDE, you can begin | |
making changes to sources. As with any project opened in NetBeans IDE, you can | |
open files in the Source Editor by double-clicking on their nodes, as they | |
appear in the IDE's windows (for example, Projects (Ctrl-1 on Windows/Cmd-1 on OS X), Files (Ctrl-2 on Windows/Cmd-2 on OS X), Favorites | |
(Ctrl-3 on Windows/Cmd-3 on OS X)).</p> | |
<p>When working with sources in the IDE, there are various UI components at your | |
disposal, which aid in both viewing and operating version control commands:</p> | |
<ul> | |
<li><a href="#viewingChanges">Viewing Changes in the Source Editor</a></li> | |
<li><a href="#viewingFileStatus">Viewing File Status Information</a></li> | |
<li><a href="#comparing">Comparing File Revisions</a></li> | |
<li><a href="#merging">Merging File Revisions</a></li> | |
</ul> | |
<div class="indent"> | |
<a name="viewingChanges"></a> | |
<h3>Viewing Changes in the Source Editor</h3> | |
<p>When you open a versioned file in the IDE's Source Editor, you can view real-time | |
changes occurring to your file as you modify it against your previously checked-out | |
base version from the repository. As you work, the IDE uses color encoding in the | |
Source Editor's margins to convey the following information:</p> | |
<table class="cell"> | |
<tr> | |
<td class="align-right cell"><strong>Blue</strong> | |
( <span style="background-color:#b8cfe5"> </span> )</td> | |
<td>Indicates lines that have been changed since the earlier revision.</td> | |
</tr> | |
<tr> | |
<td class="align-right cell"><strong>Green</strong> | |
( <span style="background-color:#b4ffb4"> </span> )</td> | |
<td>Indicates lines that have been added since the earlier revision.</td> | |
</tr> | |
<tr> | |
<td class="align-right cell"><strong>Red</strong> | |
( <span style="background-color:#ffa0b4"> </span> )</td> | |
<td>Indicates lines that have been removed since the earlier revision.</td> | |
</tr> | |
</table> | |
<br> | |
<p>The Source Editor's left margin shows changes occurring on a line-by-line basis. | |
When you modify a given line, changes are immediately shown in the left margin.</p> | |
<p>You can click on a color grouping in the margin to call versioning commands. For | |
example, the screen capture below left shows widgets available to you when clicking | |
a red icon, indicating that lines have been removed from your local copy.</p> | |
<p>The Source Editor's right margin provides you with an overview that displays | |
changes made to your file as a whole, from top to bottom. Color encoding is | |
generated immediately when you make changes to your file.</p> | |
<p>Note that you can click on a specific point within the margin to bring your | |
inline cursor immediately to that location in the file. To view the number of | |
lines affected, hover your mouse over the colored icons in the right margin:</p> | |
<table class="cell" style="width:500px"> | |
<tr> | |
<td><a href="../../../images_www/articles/73/ide/subversion/left-ui.png" rel="lytebox" | |
title="versioning color encoding displayed in editor's left margin"> | |
<img src="../../../images_www/articles/73/ide/subversion/left-ui-small.png" class="b-all" | |
alt="Versioning color encoding displayed in editor's left margin"></a> | |
<br><strong>Left margin</strong></td> | |
<td><img src="../../../images_www/articles/73/ide/subversion/right-ui.png" class="b-all" | |
alt="Versioning color encoding displayed in editor's right margin" | |
title="versioning color encoding displayed in editor's right margin"> | |
<br><strong>Right margin</strong></td> | |
</tr> | |
</table> | |
<a name="viewingFileStatus"></a> | |
<h3>Viewing File Status Information</h3> | |
<p>When you are working in the Projects (Ctrl-1 on Windows/Cmd-1 on OS X), Files (Ctrl-2 on Windows/Cmd-2 on OS X), Favorites | |
(Ctrl-3 on Windows/Cmd-3 on OS X), or Versioning windows, the IDE provides several visual features | |
that aid in viewing status information about your files. In the example | |
below, notice how the badge (e.g. | |
<img src="../../../images_www/articles/73/ide/subversion/blue-badge.png" | |
alt="Blue badge">), color of the file name, and adjacent status | |
label, all coincide with each other to provide you with a simple but | |
effective way to keep track of versioning information on your files: | |
<br> | |
<br> | |
<img src="../../../images_www/articles/73/ide/subversion/badge-example.png" | |
class="b-all" alt="Blue badge displayed in Favorites window"></p> | |
<p>Badges, color coding, file status labels, and perhaps most importantly, | |
the Versioning window all contribute to your ability to effectively | |
view and manage and versioning information in the IDE.</p> | |
<ul> | |
<li><a href="#badges">Badges and Color Coding</a></li> | |
<li><a href="#fileStatus">File Status Labels</a></li> | |
<li><a href="#versioning">The Versioning Window</a></li> | |
</ul> | |
<div class="indent"> | |
<a name="badges"></a> | |
<h4>Badges and Color Coding</h4> | |
<p>Badges are applied to project, folder, and package nodes and | |
inform you of the status of files contained within that node:</p> | |
<p>The following table displays the color scheme used for badges:</p> | |
<table> | |
<tr> | |
<th class="tblheader" scope="col" style="width:110px">UI Component</th> | |
<th class="tblheader" scope="col">Description</th> | |
</tr> | |
<tr> | |
<td class="tbltd1 align-center"><strong>Blue Badge</strong> | |
(<img src="../../../images_www/articles/73/ide/subversion/blue-badge.png" | |
alt="Blue badge">)</td> | |
<td class="tbltd1">Indicates the presence of files that have been locally modified, added or | |
deleted. For packages, this badge applies only to the package itself and | |
not its subpackages. For projects or folders, the badge indicates changes | |
within that item, or any of the contained subfolders.</td> | |
</tr> | |
<tr> | |
<td class="tbltd1 align-center"><strong>Red Badge</strong> | |
(<img src="../../../images_www/articles/73/ide/subversion/red-badge.png" | |
alt="Red badge">)</td> | |
<td class="tbltd1">Marks projects, folders or packages that contain <em>conflicting</em> | |
files (i.e. local versions that conflict with versions maintained in | |
the repository). For packages, this badge applies only to the package | |
itself and not its subpackages. For projects or folders, the badge | |
indicates conflicts within that item, or any of the contained subfolders.</td> | |
</tr> | |
</table> | |
<br><br><a name="color-coding-table"></a> | |
<p>Color coding is applied to file names in order to indicate their current | |
status against the repository:</p> | |
<table> | |
<tr> | |
<th class="tblheader" scope="col" style="width:40px">Color</th> | |
<th class="tblheader" scope="col">Example</th> | |
<th class="tblheader" scope="col">Description</th> | |
</tr> | |
<tr> | |
<td class="tbltd1 align-center"><strong>Blue</strong></td> | |
<td class="tbltd1"><img src="../../../images_www/articles/73/ide/subversion/blue-text.png" | |
alt="Blue text"></td> | |
<td class="tbltd1">Indicates that the file has been locally modified.</td> | |
</tr> | |
<tr> | |
<td class="tbltd1 align-center"><strong>Green</strong></td> | |
<td class="tbltd1"><img src="../../../images_www/articles/73/ide/subversion/green-text.png" | |
alt="Green text"></td> | |
<td class="tbltd1">Indicates that the file has been locally added.</td> | |
</tr> | |
<tr> | |
<td class="tbltd1 align-center"><strong>Red</strong></td> | |
<td class="tbltd1"><img src="../../../images_www/articles/73/ide/subversion/red-text.png" | |
alt="Red text"></td> | |
<td class="tbltd1">Indicates that the file contains conflicts between your local | |
working copy and the repository's version.</td> | |
</tr> | |
<tr> | |
<td class="tbltd1 align-center"><strong>Gray</strong></td> | |
<td class="tbltd1"><img src="../../../images_www/articles/73/ide/subversion/gray-text.png" | |
alt="Gray text"></td> | |
<td class="tbltd1">Indicates that the file is ignored by Subversion and will not | |
be included in versioning commands (e.g. Update and Commit). Files | |
can only be made to be ignored if they have not yet been versioned.</td> | |
</tr> | |
<tr> | |
<td class="tbltd1 align-center" style="width:120px"><strong>Strike-Through</strong></td> | |
<td class="tbltd1 align-center"><img alt="Strike-through text" | |
src="../../../images_www/articles/73/ide/subversion/strike-through-text.png"></td> | |
<td class="tbltd1">Indicates that the file is excluded from commit operations. | |
Strike-through text only appears in specific locations, such as the Versioning | |
window or Commit dialog, when you choose to exclude individual files from a | |
commit action. Such files are still affected by other Subversion commands, | |
such as Update.</td> | |
</tr> | |
</table> | |
<br><a name="fileStatus"></a> | |
<h4>File Status Labels</h4> | |
<p>File status labels provide a textual indication of the status of versioned | |
files in the IDE's windows. By default, the IDE displays status (new, modified, | |
ignored, etc.) and folder information in gray text to the right of files, as | |
they are listed in windows. You can, however, modify this format to suit | |
your own needs. For example, if you want to add revision numbers to status | |
labels, do the following:</p> | |
<ol> | |
<li>Choose Tools > Options (NetBeans > Preferences on OS X) from the | |
main menu. The Options window opens.</li> | |
<li>Select the Miscellaneous button along the top of the window, then click | |
the Versioning tab beneath it. Make sure Subversion is selected beneath | |
Versioning Systems in the left panel. (See the above <a href="#svnOptions">screen | |
capture</a> for reference.)</li> | |
<li>Click the Add Variable button to the right of the status label Format | |
text field. In the Add Variable dialog that displays, select the | |
<code>{revision}</code> variable, then click OK. The revision variable | |
is added to the status label Format text field.</li> | |
<li>To reformat status labels so that only status and revision display to | |
the right of files, rearrange the contents of the Status Label Format | |
text field to the following: | |
<pre class="examplecode">[{status}; {revision}]</pre> | |
Click OK. Status labels now list file status and revision numbers | |
(where applicable): | |
<br> | |
<p class="tips">File status labels can be toggled on and off by choosing | |
View > Show Versioning Labels from the main menu.</p> | |
<br> | |
<img src="../../../images_www/articles/73/ide/subversion/file-labels.png" | |
class="b-all margin-around" alt="File labels displayed next to file names"></li> | |
</ol> | |
<p class="tips">File status labels can be toggled on and off by choosing | |
View > Show Versioning Labels from the main menu.</p> | |
<a name="versioning"></a> | |
<h4>The Versioning Window</h4> | |
<p>The Subversion Versioning window provides you with a real-time list of all | |
of the changes made to files within a selected folder of your local working | |
copy. It opens by default in the bottom panel of the IDE, listing added, | |
deleted or modified files.</p> | |
<p>To open the Versioning window, select a versioned file or folder (e.g. from | |
the Projects, Files, or Favorites window) and either choose Subversion > | |
Show Changes from the right-click menu, or choose Team > Show Changes | |
from the main menu. The following window appears in the bottom of the IDE:</p> | |
<p class="align-center"><a href="../../../images_www/articles/73/ide/subversion/versioning-window.png" rel="lytebox" | |
title="Versioning window displaying locally new files"> | |
<img src="../../../images_www/articles/73/ide/subversion/versioning-window-small.png" class="b-all" | |
alt="Versioning window displaying locally new files"></a></p> | |
<p>By default, the Versioning window displays a list of all modified files within | |
the selected package or folder. Using the buttons in the toolbar, you can | |
choose to display all changes or limit the list of displayed files to either | |
locally or remotely modified files. You can also click the column headings | |
above the listed files to sort the files by name, status or location.</p> | |
<p class="notes"><b>Notes:</b></p> | |
<ul><li> To get notified of when a source file | |
in one of your open projects has been modified, choose Team > Show Changes from the main menu. Alternatively, if the Versioning window is open, click the Refresh Status button.</li> | |
<li>Operations in the Projects window work only on the projects themselves and are not recursive. To show modifications in nested/child projects, you can use the Files or Favorites window.</li></ul> | |
<p>The Versioning window toolbar also includes buttons that enable you to invoke | |
the most common Subversion tasks on all files displayed in the list. The | |
following table lists the Subversion commands available in the toolbar of the | |
Versioning window:</p> | |
<table> | |
<tr> | |
<th class="tblheader" scope="col">Icon</th> | |
<th class="tblheader" scope="col" style="width:110px">Name</th> | |
<th class="tblheader" scope="col">Function</th> | |
</tr> | |
<tr> | |
<td class="tbltd1 align-center"><img src="../../../images_www/articles/73/ide/subversion/refresh.png" | |
alt="refresh status icon"></td> | |
<td class="tbltd1 align-center"><strong>Refresh Status</strong></td> | |
<td class="tbltd1">Refreshes the status of the selected files and | |
folders. Files displayed in the Versioning window can be | |
refreshed to reflect any changes that may have been made | |
externally.</td> | |
</tr> | |
<tr> | |
<td class="tbltd1 align-center"><img src="../../../images_www/articles/73/ide/subversion/diff.png" | |
alt="Diff all icon"></td> | |
<td class="tbltd1 align-center"><strong>Diff All</strong></td> | |
<td class="tbltd1">Opens the Diff Viewer providing you with a side-by-side | |
comparison of your local copies and the versions maintained in the | |
repository.</td> | |
</tr> | |
<tr> | |
<td class="tbltd1 align-center"><img src="../../../images_www/articles/73/ide/subversion/update.png" | |
alt="update all icon"></td> | |
<td class="tbltd1 align-center"><strong>Update All</strong></td> | |
<td class="tbltd1">Updates all selected files from the repository.</td> | |
</tr> | |
<tr> | |
<td class="tbltd1 align-center"><img src="../../../images_www/articles/73/ide/subversion/commit.png" | |
alt="Commit all icon"></td> | |
<td class="tbltd1 align-center"><strong>Commit All</strong></td> | |
<td class="tbltd1">Enables you to commit local changes to the repository.</td> | |
</tr> | |
</table> | |
<br> | |
<p>You can access other Subversion commands in the Versioning window by selecting a table | |
row that corresponds to a modified file, and choosing a command from the right-click menu:</p> | |
<p class="align-center"> | |
<img src="../../../images_www/articles/73/ide/subversion/versioning-right-click.png" class="b-none margin-around" | |
alt="Right-click menu displayed on selected file in Versioning window"></p> | |
<p>For example, you can perform the following actions on a file:</p> | |
<table> | |
<tr> | |
<td> | |
<ul> | |
<li><strong>Show Annotations</strong>: | |
<br><br> | |
Displays author and revision number information in the left margin of | |
files opened in the Source Editor.</li> | |
</ul></td> | |
<td class="f-page-cell"> | |
<img src="../../../images_www/articles/73/ide/subversion/annotations.png" | |
alt="Annotations displayed in Source Editor's left margin" class="b-all"></td> | |
</tr> | |
<tr> | |
<td> | |
<ul> | |
<li><strong>Search History</strong>: | |
<br><br> | |
Enables you to search for and compare multiple revisions of the selected | |
file in the IDE's History Viewer. From the History Viewer you can also | |
perform a <a href="#comparing">diff</a> or roll back your local copy to | |
a selected revision.</li> | |
</ul></td> | |
<td class="f-page-cell"> | |
<a href="../../../images_www/articles/73/ide/subversion/history-viewer.png" rel="lytebox" | |
title="Subversion History Viewer displaying multiple revisions on a file"> | |
<img src="../../../images_www/articles/73/ide/subversion/history-viewer-small.png" class="b-all" | |
alt="Subversion History Viewer displaying multiple revisions on a file"></a></td> | |
</tr> | |
<tr> | |
<td> | |
<ul> | |
<li><strong>Exclude from Commit</strong>: | |
<br><br> | |
Allows you to mark the file to be excluded when performing | |
a commit.</li> | |
</ul></td> | |
<td class="f-page-cell"> | |
<a href="../../../images_www/articles/73/ide/subversion/exclude-from-commit.png" | |
title="files marked as excluded in the Commit dialog" rel="lytebox"> | |
<img src="../../../images_www/articles/73/ide/subversion/exclude-from-commit-small.png" | |
class="b-all" alt="Files marked as excluded in the Commit dialog"></a></td> | |
</tr> | |
<tr> | |
<td> | |
<ul> | |
<li><strong>Revert Delete</strong>: | |
<br><br> | |
Opens the Revert Modifications dialog, enabling you to revert any | |
delete actions that you have committed to files in your local working copy. | |
The specified file(s) are retrieved from the IDE's local history archive | |
and reinstated into your local working copy.</li> | |
</ul></td> | |
<td class="f-page-cell"> | |
<a href="../../../images_www/articles/73/ide/subversion/revert-mods.png" | |
title="Revert Modifications dialog" rel="lytebox"> | |
<img src="../../../images_www/articles/73/ide/subversion/revert-mods-small.png" | |
class="b-right b-bottom" alt="Revert Modifications dialog"></a></td> | |
</tr> | |
<tr> | |
<td> | |
<ul> | |
<li><strong>Revert Modifications</strong>: | |
<br><br> | |
Opens the Revert Modifications dialog which you can use to specify | |
parameters for reverting any local changes to revisions maintained | |
in the repository. | |
<br><br> | |
When specifying revisions, you can click Search to open the Search | |
Revisions dialog. This scans the repository and lists all file revisions | |
based on the date you enter.</li> | |
</ul></td> | |
<td class="f-page-cell"> | |
<a href="../../../images_www/articles/73/ide/subversion/search-rev.png" rel="lytebox" | |
title="Search Revisions dialog lists file revisions according to date"> | |
<img src="../../../images_www/articles/73/ide/subversion/search-rev-small.png" | |
alt="Search Revisions dialog listing file revisions according to date" | |
class="b-right b-bottom"></a></td> | |
</tr> | |
</table> | |
</div> | |
<a name="comparing"></a> | |
<h3>Comparing File Revisions</h3> | |
<p>Comparing file revisions is a common task when working with versioned | |
projects. The IDE enables you to compare revisions by using the Diff | |
command, which is available from the right-click menu of a selected | |
item (Subversion > Diff), as well as from the Versioning window. | |
In the Versioning window, you can perform diffs by either double-clicking | |
a listed file, otherwise you can click the Diff All icon (<img alt="Diff all icon" | |
src="../../../images_www/articles/73/ide/subversion/diff.png">) located in the | |
toolbar at the top.</p> | |
<p>When you perform a diff, a graphical Diff Viewer opens for the selected | |
file(s) and revisions in the IDE's main window. The Diff Viewer displays | |
two copies in side-by-side panels. The more current copy appears on the | |
right side, so if you are comparing a repository revision against your | |
working copy, the working copy displays in the right panel:</p> | |
<p class="align-center"> | |
<a href="../../../images_www/articles/73/ide/subversion/diff-viewer.png" rel="lytebox" | |
title="Subversion Diff Viewer"> | |
<img src="../../../images_www/articles/73/ide/subversion/diff-viewer-small.png" | |
class="b-all margin-around" alt="Subversion Diff Viewer"></a></p> | |
<p>The Diff Viewer makes use of the same <a href="#viewingChanges">color encoding</a> | |
used elsewhere to display version control changes. In the screen capture | |
displayed above, the green block indicates content that has been added to | |
the more current revision. The red block indicates that content from the | |
earlier revision has been removed from the later. Blue indicates that | |
changes have occurred within the highlighted line(s).</p> | |
<p>Also, when performing a diff on a group of files, such as on a project, | |
package, or folder, or when clicking Diff All | |
(<img src="../../../images_www/articles/73/ide/subversion/diff.png" | |
alt="Diff all icon">), you can switch between diffs by clicking files | |
listed in the upper region of the Diff Viewer.</p> | |
<p>The Diff Viewer also provides you with the following functionality:</p> | |
<ul> | |
<li><a href="#makeChanges">Make Changes to your Local Working Copy</a></li> | |
<li><a href="#navigateDifferences">Navigate Among Differences</a></li> | |
<li><a href="#changeViewCriteria">Change Viewing Criteria</a></li> | |
</ul> | |
<div class="indent"> | |
<a name="makeChanges"></a> | |
<h4>Make Changes to your Local Working Copy</h4> | |
<p>If you are performing a diff on your local working copy, the IDE enables you to | |
make changes directly from within the Diff Viewer. To do so, you can either | |
place your cursor within the right pane of the Diff Viewer and modify your file | |
accordingly, otherwise make use of the inline icons that display adjacent to | |
each highlighted change:</p> | |
<table> | |
<tr> | |
<td class="align-right cell" style="width:120px"><strong>Replace</strong> (<img alt="Replace icon" | |
src="../../../images_www/articles/73/ide/subversion/insert.png">):</td> | |
<td>Inserts the highlighted text from the previous revision into | |
the current revision</td> | |
</tr> | |
<tr> | |
<td class="align-right cell" style="width:120px"><strong>Move All</strong> (<img alt="Move all icon" | |
src="../../../images_www/articles/73/ide/subversion/arrow.png">):</td> | |
<td>Reverts the file's current revision to the state of the selected | |
previous revision</td> | |
</tr> | |
<tr> | |
<td class="align-right cell" style="width:120px"><strong>Remove</strong> (<img alt="Remove icon" | |
src="../../../images_www/articles/73/ide/subversion/remove.png">):</td> | |
<td>Removes the highlighted text from the current revision so that it | |
mirrors the previous revision</td> | |
</tr> | |
</table> | |
<a name="navigateDifferences"></a> | |
<h4>Navigate among Differences between Compared Files</h4> | |
<p>If your diff contains multiple differences, you can navigate among them by | |
using the arrow icons displayed in the toolbar. The arrow icons enable you | |
to view differences as they appear from top to bottom:</p> | |
<table> | |
<tr> | |
<td class="align-right cell" style="width:120px"><strong>Previous</strong> | |
(<img src="../../../images_www/articles/73/ide/subversion/diff-prev.png" | |
alt="Previous difference button">):</td> | |
<td>Goes to previous difference displayed in the diff</td> | |
</tr> | |
<tr> | |
<td class="align-right cell" style="width:120px"><strong>Next</strong> | |
(<img src="../../../images_www/articles/73/ide/subversion/diff-next.png" | |
alt="Next difference button">):</td> | |
<td>Goes to next difference displayed in the diff</td> | |
</tr> | |
</table> | |
<a name="changeViewCriteria"></a> | |
<h4>Change Viewing Criteria</h4> | |
<p>You can choose whether to view files containing changes from the local | |
working copy, the repository, as well as both simultaneously:</p> | |
<table> | |
<tr> | |
<td class="align-right cell" style="width:120px"><strong>Local</strong> | |
( <img src="../../../images_www/articles/73/ide/subversion/locally-mod.png" | |
alt="Locally modified icon"> ):</td> | |
<td>Displays locally modified files only</td> | |
</tr> | |
<tr> | |
<td class="align-right cell" style="width:120px"><strong>Remote</strong> | |
( <img src="../../../images_www/articles/73/ide/subversion/remotely-mod.png" | |
alt="Remotely modified icon"> ):</td> | |
<td>Displays remotely modified files only</td> | |
</tr> | |
<tr> | |
<td class="align-right cell" style="width:120px"><strong>Both</strong> | |
( <img src="../../../images_www/articles/73/ide/subversion/both-mod.png" | |
alt="Locally and remotely modified icon"> ):</td> | |
<td>Displays both locally and remotely modified files</td> | |
</tr> | |
</table> | |
<p class="notes"><b>Note:</b> The color scheme described in the <a href="#badges"> | |
Badges and Color Coding</a> section is disregarded with respect to the above mentioned icons. </p> | |
</div> | |
<a name="merging"></a> | |
<h3>Merging File Revisions</h3> | |
<p>NetBeans IDE enables you to merge changes between repository revisions and | |
your local working copy. You can specify a range of revisions to merge. You | |
can even merge a range of revisions from two separate repository folders.</p> | |
<p>The following scenario describes a common use-case: You have checked out the | |
trunk version on a folder named <code>JavaApp</code>, and now want to merge your | |
copy with a branch. For demonstrative purposes, your repository layout | |
contains a <code>branches</code> folder used to contain all branched files:</p> | |
<ol> | |
<li>In the Projects, Files, or Favorites window, right-click the files or | |
folders on which you want to perform the merge operation and choose | |
Subversion > Merge Changes. The Merge dialog displays.</li> | |
<li>In the Merge From drop-down list, select One Repository Folder Since | |
Its Origin. You are porting all changes made on a single branch from | |
the time it was created.</li> | |
<li>In the Repository Folder text field, enter the path to the folder from | |
which you want to port changes (<code>branches/JavaApp</code>). Leave the | |
Ending Revision field empty to indicate that you want to include all | |
revisions up to the <em>HEAD</em> (i.e. current state). | |
<p class="align-center"> | |
<a href="../../../images_www/articles/73/ide/subversion/svn-merge.png" rel="lytebox" | |
title="Subversion Merge dialog"> | |
<img src="../../../images_www/articles/73/ide/subversion/svn-merge-small.png" | |
class="margin-around b-none" alt="Subversion Merge dialog"></a></p></li> | |
<li>Click Merge. The IDE incorporates any differences found between the | |
branch revisions and your local copy of the file. If merge conflicts | |
occur, the file's status is updated to <a href="#resolving">Merge | |
Conflict</a> to indicate this.</li> | |
</ol> | |
<p><strong class="notes">Note: </strong>After merging revisions to your local working | |
copy, you must still commit changes using the Commit command in order for them | |
to be added to the repository.</p> | |
</div> | |
<p class="align-center"><a href="#top">top</a></p> | |
<a name="committing"></a> | |
<h2>Committing Sources to a Repository</h2> | |
<p>After making changes to sources, you commit them to the repository. It is | |
generally a good idea to update any copies you have against the repository | |
prior to performing a commit in order to ensure that conflicts do not arise. | |
Conflicts can occur however, and should be thought of as a natural event | |
when numerous developers are working on a project simultaneously. The IDE | |
provides flexible support that enables you to perform all of these functions. | |
It also provides a Conflict Resolver which allows you to safely deal with any | |
conflicts as they occur.</p> | |
<ul> | |
<li><a href="#updating">Updating Local Copies</a></li> | |
<li><a href="#resolving">Resolving Conflicts</a></li> | |
<li><a href="#performing">Performing the Commit</a></li> | |
</ul> | |
<div class="indent"> | |
<a name="updating"></a> | |
<h3>Updating Local Copies</h3> | |
<p>You can perform updates by choosing Subversion > Update from the | |
right-click menu of any versioned item in the Projects, Files, or | |
Favorites windows. When working directly from the Versioning window, | |
you need only right-click a listed file and choose Update.</p> | |
<p>To perform an update on all source files, you can click | |
the Update All icon (<img src="../../../images_www/articles/73/ide/subversion/update.png" | |
alt="Update all icon">), which displays in the toolbars located | |
at the top of both the <a href="#versioning">Versioning Window</a>, | |
as well as the <a href="#comparing">Diff Viewer</a>. Any changes that | |
may have occurred in the repository are displayed in the Versioning | |
Output window.</p> | |
<a name="resolving"></a> | |
<h3>Resolving Conflicts</h3> | |
<p>When you perform an update or a commit, the IDE's Subversion support | |
compares your files with repository sources to make sure that other | |
changes have not already occurred in the same locations. When your | |
previous checkout (or update) no longer matches the repository <em>HEAD</em> | |
(i.e. most current revision), <em>and</em> the changes that you applied | |
to your local working copy coincide with areas in the HEAD that | |
have also changed, your update or commit results in a <em>conflict</em>.</p> | |
<p>As indicated in <a href="#badges">Badges and Color Coding</a>, conflicts | |
are displayed in the IDE with red text and are accompanied by a red badge | |
(<img src="../../../images_www/articles/73/ide/subversion/red-badge.png" | |
alt="Red badge">) when viewed in the Projects, Files, or Favorites windows. | |
When working in the Versioning window, conflicts are also indicated | |
by a file's status:</p> | |
<p class="align-center"> | |
<img src="../../../images_www/articles/73/ide/subversion/conflict-versioning-win.png" | |
class="b-right margin-around" alt="File conflict displayed in Versioning window"></p> | |
<p>Any conflicts that arise must be resolved before you commit files to the | |
repository. You can resolve conflicts in the IDE using the Merge Conflicts | |
Resolver. The Merge Conflicts Resolver provides an intuitive interface | |
that enables you to address individual conflicts sequentially while viewing | |
merged output as you make changes. You can access the Merge Conflicts | |
Resolver on a file that is in conflict by right-clicking that file and | |
choosing Subversion > Resolve Conflicts.</p> | |
<p>The Merge Conflicts Resolver displays the two conflicting revisions | |
side-by-side in the top pane, with the conflicting areas highlighted. | |
The lower pane depicts the file as it appears while merges for individual | |
conflicts between the two revisions occur:</p> | |
<p class="align-center"> | |
<a href="../../../images_www/articles/73/ide/subversion/conflict-resolver.png" rel="lytebox" | |
title="Conflict Resolver displaying a conflicted file"> | |
<img src="../../../images_www/articles/73/ide/subversion/conflict-resolver-small.png" | |
class="margin-around b-all" alt="Conflict Resolver displaying a conflicted file"></a></p> | |
<p> | |
You resolve a conflict by accepting one of the two revisions displayed | |
in the top pane. Click the Accept button of the revision you want to | |
accept. The IDE merges the accepted revision with the source file, and | |
you can immediately see the results of the merge in the bottom pane of | |
the Merge Conflicts Resolver. Once all conflicts are resolved, click OK | |
to exit the Merge Conflicts Resolver and save the modified file. The | |
conflict badge is removed and you can now commit the modified file to | |
the repository.</p> | |
<a name="performing"></a> | |
<h3>Performing the Commit</h3> | |
<p>After editing source files, performing an update and resolving any conflicts, | |
you commit files from your local working copy to the repository. The IDE | |
enables you to call the commit command in the following ways:</p> | |
<ul> | |
<li>From the Projects, Files or Favorites windows, right-click new or | |
modified items and choose Subversion > Commit.</li> | |
<li>From the Versioning window or Diff Viewer, click the Commit All | |
(<img src="../../../images_www/articles/73/ide/subversion/commit.png" | |
alt="Commit all icon">) button located in the toolbar.</li> | |
</ul> | |
<p>The Commit dialog opens, displaying files that are about to be committed | |
to the repository:</p> | |
<p class="align-center"> | |
<a href="../../../images_www/articles/73/ide/subversion/commit-dialog.png" rel="lytebox" | |
title="Commit dialog displaying files about to be committed"> | |
<img src="../../../images_www/articles/73/ide/subversion/commit-dialog-small.png" | |
class="b-none margin-around" alt="Commit dialog displaying files about to be committed"></a></p> | |
<p>The Commit dialog lists:</p> | |
<ul> | |
<li>all locally modified files</li> | |
<li>all files that have been deleted locally</li> | |
<li>all new files (i.e. files that do not yet exist in the repository)</li> | |
<li>all files that you have renamed. Subversion handles renamed files by | |
deleting the original file, and creating a duplicate using the new | |
name.</li> | |
</ul> | |
<p>From the Commit dialog, it is possible to specify whether to exclude | |
individual files from the commit. To do so, click the Commit Action column | |
of a selected file and choose Exclude from Commit from the drop-down | |
list. Similarly, when new files are included, you can specify the MIME | |
type by choosing Add as Binary or Add as Text from the drop-down list.</p> | |
<p>To perform the commit:</p> | |
<ol> | |
<li>Type in a commit message in the Commit Message text area. Alternatively, | |
click the Recent Messages ( <img src="../../../images_www/articles/73/ide/subversion/recent-msgs.png" | |
alt="Recent messages icon"> ) icon located in the upper right corner to | |
view and select from a list of messages that you have previously used.</li> | |
<li>After specifying actions for individual files, click Commit. The IDE | |
executes the commit and sends your local changes to the repository. | |
The IDE's status bar, located in the bottom right of the interface, | |
displays as the commit action takes place. Upon a successful commit, | |
versioning badges disappear in the Projects, Files and Favorites windows, | |
and the color encoding of committed files returns to black.</li> | |
</ol> | |
</div> | |
<p class="align-center"><a href="#top">top</a></p> | |
<a name="summary"></a> | |
<h2>Summary</h2> | |
<p>This concludes the guided tour of Subversion for NetBeans IDE 6.x and higher. This | |
document demonstrated how to perform basic versioning tasks in the IDE by | |
guiding you through the standard workflow when using the IDE's Subversion | |
support. It has shown how to set up a versioned project and perform basic | |
tasks on versioned files while introducing you to some of the new Subversion | |
features included in the IDE.</p> | |
<div class="feedback-box"> | |
<a href="/about/contact_form.html?to=3&subject=Feedback:%20Using%20Subversion%20Support%20in%20NetBeans%20IDE">Send Feedback on This Tutorial</a></div> | |
<br style="clear:both;"> | |
<p class="align-center"><a href="#top">top</a></p> | |
<a name="seeAlso"></a> | |
<h2>See Also</h2> | |
<p>For related documents, see the following resources:</p> | |
<ul> | |
<li><a href="http://wiki.netbeans.org/wiki/view/NetBeansUserFAQ#section-NetBeansUserFAQ-VersionControlSystems">Subversion | |
Support FAQ for NetBeans IDE</a></li> | |
<li><a href="http://wiki.netbeans.org/FaqSubversionClients">Subversion Clients FAQ</a></li> | |
<li><a href="git.html">Using Git Support in NetBeans IDE</a></li> | |
<li><a href="mercurial.html">Using Mercurial Support in NetBeans IDE</a></li> | |
<li><a href="mercurial-queues.html">Using Support for Mercurial Queues in NetBeans IDE</a></li> | |
<li><a href="cvs.html">Using CVS Support in NetBeans IDE</a></li> | |
<li><a href="clearcase.html">Using ClearCase Support in NetBeans IDE</a></li> | |
<li><a href="http://www.oracle.com/pls/topic/lookup?ctx=nb8000&id=NBDAG234">Versioning Applications with Version Control</a> in <i>Developing Applications with NetBeans IDE</i>.</li> | |
</ul> | |
<p class="align-center"><a href="#top">top</a></p> | |
</body> | |
</html> |