<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
    <head>  
        <title>NetBeans IDE - Team Collaboration</title>
        <meta http-equiv="content-language" content="en">
        <meta name="description" content="DESCRIPTION HERE">
        <link rel="stylesheet" type="text/css" href="../../features.css">
        <link rel="stylesheet" type="text/css" href="/images_www/js/colorbox/colorbox.css">
    </head>
    <body>
        <script type="text/javascript" src="/images_www/js/colorbox/jquery.colorbox-min.js"></script>

        <script type="text/javascript">
            $(document).ready(function() {
                $('a.cbox').colorbox({rel: 'cbox', opacity: 0.7});
            });
        </script>
        <div style="margin:10px 20px 0px 0px;">
            <h1>Team Collaboration</h1>
            <p class="xintro">
                <a href="../../images_www/v7/3/features/ide-collaboration-full.png"><img
                        src="../../images_www/v7/3/features/ide-collaboration-cut.png"
                        alt="Java editor features in NetBeans IDE"><br>
                    <span class="font-11">Click image for fullscreen preview</span></a> 
            </p>
            <p class="intro">
                Work together with others on your team,
                via issue tracking and continuous integration.
            </p>
            <div class="line">&nbsp;</div>

            <!-- right text section start -->
            <a name="o1"></a>
            <span class="overview-left" id="im2"><a href="../../images_www/v7/3/features/ide-collaboration-full.png" class="cbox" title="Issue Tracker"><img alt="Issue Tracker" class="box" src="../../images_www/v7/3/features/ide-collaboration-tracker-cut.png"></a></span>
            <h2>Issue Tracking</h2>
            <p> You can configure NetBeans IDE to use your
                own Jira or BugZilla repository.</p>
            <p>The user-friendly integration 
                between version control systems
                and issue trackers allows you to commit code changes and update the
                associated issue status in one step. Create new issues and edit
                existing issues; sort and filter issues and save queries; create
                patches and add attachments&#8212;all from the IDE. </p>
            
            <div class="line">&nbsp;</div>
            <!-- left text section start -->

            <!-- right text section start -->
            <a name="o2"></a>
            <span id="im1" class="overview-right"><a href="../../images_www/v7/3/features/ide-collaboration-hudson-full.png" class="cbox" title="Hudson"><img src="../../images_www/v7/3/features/ide-collaboration-hudson-cut.png" alt="Hudson"  /></a></span>
            <h2>Continuous Integration</h2>
            <p>NetBeans IDE lets you create and manage Hudson continuous servers
                and related Hudson jobs. You can
                register Hudson instances, create new Hudson jobs, run Hudson jobs,
                and view results provided by the server.</p>
            <p>Browse your hosted Hudson jobs, builds, workspaces, and artifacts, and 
                inspect the build console in the Output window. When a 
                build fails, you are notified immediately in the IDE's status bar.</p>
            <p>To find out why a job failed, right-click a build node and inspect 
                stack traces for all failed tests. You can also view the changelog 
                and browse file diffs in a user-friendly way, right inside the IDE.</p> 
            <p><a href="http://wiki.netbeans.org/HudsonInNetBeans" class="arr-link">
                    Hudson in NetBeans IDE</a></p>
            <div class="line">&nbsp;</div>
            <!-- right text section end -->

            <h2>See Also</h2>
            <ul class="bigger">
                <li><a href="../../community/releases/81/index.html">NetBeans IDE 8.1 Release Page</a> for a list of highlighted features in the latest stable release.</li>                
                <li><a href="../../kb/trails/java-se.html">General Java Development Learning Trail</a> for tutorials that will help you get started.</li> 
            </ul>

        </div>
    </body>
</html>
