| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- Search for CHANGEME in this document when copying and using it: --> |
| <!-- |
| |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| |
| --> |
| <?xml-stylesheet type="text/xml" href="../../nbbuild/javadoctools/apichanges.xsl"?> |
| <!DOCTYPE apichanges PUBLIC "-//NetBeans//DTD API changes list 1.0//EN" "../../nbbuild/javadoctools/apichanges.dtd"> |
| |
| <!-- |
| |
| INFO FOR PEOPLE ADDING CHANGES: |
| |
| Check the DTD (apichanges.dtd) for details on the syntax. You do not |
| need to regenerate the HTML, as this is part of Javadoc generation; just |
| change the XML. Rough syntax of a change (several parts optional): |
| |
| <change> |
| <api name="compiler"/> |
| <summary>Some brief description here, can use <b>XHTML</b></summary> |
| <version major="1" minor="99"/> |
| <date day="13" month="6" year="2001"/> |
| <author login="jrhacker"/> |
| <compatibility addition="yes"/> |
| <description> |
| The main description of the change here. |
| Again can use full <b>XHTML</b> as needed. |
| </description> |
| <class package="org.openide.compiler" name="DoWhatIWantCompiler"/> |
| <issue number="14309"/> |
| </change> |
| |
| Also permitted elements: <package>, <branch>. <version> is API spec |
| version, recommended for all new changes. <compatibility> should say |
| if things were added/modified/deprecated/etc. and give all information |
| related to upgrading old code. List affected top-level classes and |
| link to issue numbers if applicable. See the DTD for more details. |
| |
| Changes need not be in any particular order, they are sorted in various |
| ways by the stylesheet anyway. |
| |
| Dates are assumed to mean "on the trunk". If you *also* make the same |
| change on a stabilization branch, use the <branch> tag to indicate this |
| and explain why the change was made on a branch in the <description>. |
| |
| Please only change this file on the trunk! Rather: you can change it |
| on branches if you want, but these changes will be ignored; only the |
| trunk version of this file is important. |
| |
| Deprecations do not count as incompatible, assuming that code using the |
| deprecated calls continues to see their documented behavior. But do |
| specify deprecation="yes" in <compatibility>. |
| |
| This file is not a replacement for Javadoc: it is intended to list changes, |
| not describe the complete current behavior, for which ordinary documentation |
| is the proper place. |
| |
| --> |
| |
| <apichanges> |
| |
| <!-- First, a list of API names you may use: --> |
| <apidefs> |
| <apidef name="gitlibrary_api">Git Library</apidef> |
| <!-- etc. --> |
| </apidefs> |
| |
| <!-- ACTUAL CHANGES BEGIN HERE: --> |
| |
| <changes> |
| |
| <change> |
| <api name="gitlibrary_api"/> |
| <summary>API for git stash support.</summary> |
| <version major="1" minor="31"/> |
| <date day="19" month="12" year="2014"/> |
| <author login="ovrabec"/> |
| <compatibility addition="yes"/> |
| <description> |
| <ul> |
| <li>Adding few new GitClient's methods handling the git stash support. |
| The API supports creating and applying patches and deleting and listing saved patches.</li> |
| </ul> |
| </description> |
| <class package="org.netbeans.libs.git" name="GitClient"/> |
| <issue number="249326"/> |
| </change> |
| <change> |
| <api name="gitlibrary_api"/> |
| <summary>Passing messages from running commands to the caller.</summary> |
| <version major="1" minor="30"/> |
| <date day="11" month="12" year="2014"/> |
| <author login="ovrabec"/> |
| <compatibility addition="yes"/> |
| <description> |
| <ul> |
| <li>ProgressMonitor now delivers also informational messages from running commands. |
| This is useful to obtain messages during e.g. push process when a remote repository |
| notifies about run push hooks.</li> |
| </ul> |
| </description> |
| <class package="org.netbeans.libs.git.progress" name="ProgressMonitor"/> |
| <issue number="233106"/> |
| </change> |
| <change> |
| <api name="gitlibrary_api"/> |
| <summary>New method exporting a diff between two arbitrary commits or trees.</summary> |
| <version major="1" minor="29"/> |
| <date day="27" month="10" year="2014"/> |
| <author login="ovrabec"/> |
| <compatibility addition="yes"/> |
| <description> |
| <ul> |
| <li>Adding new variant of GitClient.exportDiff which works for any |
| two arbitrary commits. It is also possible to diff between a commit and the working tree |
| or the Index.</li> |
| </ul> |
| </description> |
| <class package="org.netbeans.libs.git" name="GitClient"/> |
| <issue number="248002"/> |
| </change> |
| <change> |
| <api name="gitlibrary_api"/> |
| <summary>New method for updating a reference (branch) to a new commit id.</summary> |
| <version major="1" minor="27"/> |
| <date day="1" month="7" year="2014"/> |
| <author login="ovrabec"/> |
| <compatibility addition="yes"/> |
| <description> |
| <ul> |
| <li>New method GitClient.cherryPick used to cherry-pick commits and apply them in the |
| current branch. The command may interrupt its progress and require some user actions |
| (such as resolve conflicts or commit) and may be continued with different kinds |
| of operation types passed as its arguments.</li> |
| <li>Introduciong new repository state: CHERRY_PICKING and CHERRY_PICKING_RESOLVED |
| marking the states of the repository when a cherry-picking is not finished or |
| it requires resolving conflicts.</li> |
| </ul> |
| </description> |
| <class package="org.netbeans.libs.git" name="GitClient"/> |
| <class package="org.netbeans.libs.git" name="GitCherryPickResult"/> |
| <class package="org.netbeans.libs.git" name="GitRepositoryState"/> |
| <issue number="235267"/> |
| </change> |
| <change> |
| <api name="gitlibrary_api"/> |
| <summary>New method for updating a reference (branch) to a new commit id.</summary> |
| <version major="1" minor="26"/> |
| <date day="25" month="6" year="2014"/> |
| <author login="ovrabec"/> |
| <compatibility addition="yes"/> |
| <description> |
| <ul> |
| <li>Git client accepts the parameter telling the merge command how |
| to proceed with regard to fast-forward commits. Users may require |
| either to enforce or to completely eliminate (and always create a merge commit) |
| fast-forward merges.</li> |
| <li>Git Repository instance allows users to query for the current default fast-forward |
| option via a new getter method.</li> |
| </ul> |
| </description> |
| <class package="org.netbeans.libs.git" name="GitRepository"/> |
| <class package="org.netbeans.libs.git" name="GitClient"/> |
| <class package="org.netbeans.libs.git" name="GitMergeResult"/> |
| <issue number="245236"/> |
| </change> |
| <change> |
| <api name="gitlibrary_api"/> |
| <summary>New method for updating a reference (branch) to a new commit id.</summary> |
| <version major="1" minor="24"/> |
| <date day="23" month="6" year="2014"/> |
| <author login="ovrabec"/> |
| <compatibility addition="yes"/> |
| <description> |
| <p>In order to simplify a trivial use-case of merging a remote branch into a local branch |
| not currently checked-out we're adding a new method able to update the local branch to |
| the new id. It is possible only if the branch requires a fast-forward merge (does not |
| contain any unpushed commits). |
| </p> |
| </description> |
| <class package="org.netbeans.libs.git" name="GitClient"/> |
| <issue number="245078"/> |
| </change> |
| <change> |
| <api name="gitlibrary_api"/> |
| <summary>New methods in ProgressMonitor informing about the progress of command's subtasks.</summary> |
| <version major="1" minor="21"/> |
| <date day="4" month="3" year="2014"/> |
| <author login="ovrabec"/> |
| <compatibility addition="yes"/> |
| <description> |
| <p>When a long running git command is invoked it usually calls subtasks playing a smaller execution role |
| (e.g. counting remote objects and actual data fetching during fetch command). Git API is now able to pass |
| messages from these subtasks to an API client to let it update a progress bar and UI. |
| </p> |
| </description> |
| <class package="org.netbeans.libs.git.progress" name="ProgressMonitor"/> |
| <issue number="242370"/> |
| </change> |
| <change> |
| <api name="gitlibrary_api"/> |
| <summary>File status provides also information about the last index entry modification timestamp.</summary> |
| <version major="1" minor="19"/> |
| <date day="18" month="2" year="2014"/> |
| <author login="ovrabec"/> |
| <compatibility addition="yes"/> |
| <description> |
| <p>It may be useful to know when was the last time a file was updated in the index. <code>GitStatus</code> now |
| provides this value via <code>getIndexEntryModificationDate</code>.</p> |
| </description> |
| <class package="org.netbeans.libs.git" name="GitStatus"/> |
| <issue number="241798"/> |
| </change> |
| <change> |
| <api name="gitlibrary_api"/> |
| <summary>The log command returns also branches containing the commits from the result.</summary> |
| <version major="1" minor="16"/> |
| <date day="31" month="10" year="2013"/> |
| <author login="ovrabec"/> |
| <compatibility addition="yes"/> |
| <description> |
| <ul> |
| <li>Adding new methods to GitClient allowing users to check a submodule's status, initialize them |
| after a clone and update them to a commit relevant to the state in the parent repository.</li> |
| <li>Adding a new class GitSubmoduleStatus wrapping information about a submodule.</li> |
| </ul> |
| </description> |
| <class package="org.netbeans.libs.git" name="GitClient"/> |
| <class package="org.netbeans.libs.git" name="GitSubmoduleStatus"/> |
| <issue number="237621"/> |
| </change> |
| <change> |
| <api name="gitlibrary_api"/> |
| <summary>The log command returns also branches containing the commits from the result.</summary> |
| <version major="1" minor="14"/> |
| <date day="25" month="9" year="2013"/> |
| <author login="ovrabec"/> |
| <compatibility addition="yes"/> |
| <description> |
| <ul> |
| <li>Adding a new method GitClient.log (SearchCriteria, boolean, ProgressMonitor) |
| allowing an API client to specify if he wants to know what branches contain |
| the returned commits applying the search criteria. Such information can |
| be used to filter the resulted commits by branches without a need to restart |
| the command again.</li> |
| <li>Adding a method GitRevisionInfo.getBranches() returning all branches |
| that are known to contain the commit.</li> |
| </ul> |
| </description> |
| <class package="org.netbeans.libs.git" name="GitClient"/> |
| <class package="org.netbeans.libs.git" name="GitRevisionInfo"/> |
| <issue number="235882"/> |
| </change> |
| <change> |
| <api name="gitlibrary_api"/> |
| <summary>Adding a command setting the upstream branch/tracking of local branches</summary> |
| <version major="1" minor="12"/> |
| <date day="22" month="8" year="2013"/> |
| <author login="ovrabec"/> |
| <compatibility addition="yes"/> |
| <description> |
| <p>Adding a new method GitClient.setUpstreamBranch(String, String, ProgressMonitor) |
| allowing an API client to set the tracking/upstream branch for a local branch. |
| </p> |
| </description> |
| <class package="org.netbeans.libs.git" name="GitClient"/> |
| <issue number="234391"/> |
| </change> |
| <change> |
| <api name="gitlibrary_api"/> |
| <summary>Adding support comparing trees of arbitrary commits</summary> |
| <version major="1" minor="9"/> |
| <date day="12" month="3" year="2013"/> |
| <author login="ovrabec"/> |
| <compatibility addition="yes"/> |
| <description> |
| <ul> |
| <li>Adding a new method GitClient.getStatus(File[], String, ProgressMonitor) |
| allowing an API client to get statuses of local files not just against the HEAD but against |
| an arbitrary commit.</li> |
| <li>Adding a new method GitClient.getStatus(File[], String, String, ProgressMonitor) |
| allowing an API client to get modifications from the Git history. It is similar to |
| GitRevisionInfo.getModifications but returns file statuses between two arbitrary commits |
| and not just a commit and its parent.</li> |
| </ul> |
| </description> |
| <class package="org.netbeans.libs.git" name="GitClient"/> |
| <issue number="227348"/> |
| </change> |
| <change> |
| <api name="gitlibrary_api"/> |
| <summary>Adding support for rebase to the API</summary> |
| <version major="1" minor="8"/> |
| <date day="11" month="3" year="2013"/> |
| <author login="ovrabec"/> |
| <compatibility addition="yes"/> |
| <description> |
| <ul> |
| <li>Adding a new method GitClient.rebase delegating to the rebase command.</li> |
| </ul> |
| </description> |
| <class package="org.netbeans.libs.git" name="GitClient"/> |
| <class package="org.netbeans.libs.git" name="GitRebaseResult"/> |
| <issue number="226545"/> |
| </change> |
| <change> |
| <api name="gitlibrary_api"/> |
| <summary>Adding new method to GitClient: commit(), amending the last commit</summary> |
| <version major="1" minor="7"/> |
| <date day="6" month="2" year="2013"/> |
| <author login="ovrabec"/> |
| <compatibility addition="yes"/> |
| <description> |
| Git supports commit amendments, in other words modifying the last commit and changing its |
| commit message or modified files. Another commit method allows API clients to specify |
| either to amend the last commit or to make a fresh new commit on top of current HEAD. |
| </description> |
| </change> |
| <change> |
| <api name="gitlibrary_api"/> |
| <summary>Adding new method to GitClient: release()</summary> |
| <version major="1" minor="5"/> |
| <date day="16" month="11" year="2012"/> |
| <author login="ovrabec"/> |
| <compatibility addition="yes"/> |
| <description> |
| JGit repository normally does not close all opened file descriptors |
| and prevents external commands from working with the same repository. |
| Clients of the JGit API are supposed to call JGitRepository.close() |
| when they're done with the repository. We need to pass this method to the |
| Git Library API so when clients are done with calling all required commands |
| the library closes all descriptors and frees the git metadata files |
| for other tools. |
| </description> |
| </change> |
| <change> |
| <api name="gitlibrary_api"/> |
| <summary>Initial version of the API</summary> |
| <version major="1" minor="0"/> |
| <date day="11" month="3" year="2012"/> |
| <author login="ovrabec"/> |
| <compatibility addition="yes"/> |
| <description> |
| |
| </description> |
| </change> |
| </changes> |
| |
| <!-- Now the surrounding HTML text and document structure: --> |
| |
| <htmlcontents> |
| <!-- |
| |
| NO NO NO NO NO! |
| |
| ==============> DO NOT EDIT ME! <============== |
| |
| AUTOMATICALLY GENERATED FROM APICHANGES.XML, DO NOT EDIT |
| |
| SEE CHANGEME/apichanges.xml |
| |
| --> |
| <head> |
| <title>Change History for the Git Library API</title> |
| <link rel="stylesheet" href="prose.css" type="text/css"/> |
| </head> |
| <body> |
| |
| <p class="overviewlink"><a href="overview-summary.html">Overview</a></p> |
| |
| <h1>Introduction</h1> |
| |
| <p>This document lists changes made to the Git Library API.</p> |
| |
| <!-- The actual lists of changes, as summaries and details: --> |
| |
| <hr/><standard-changelists module-code-name="org.netbeans.libs.git"/> |
| |
| <hr/><p>@FOOTER@</p> |
| |
| </body> |
| </htmlcontents> |
| |
| </apichanges> |