| <?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>Enable forced pushing for branches</summary> | |
| <version major="1" minor="58"/> | |
| <date day="11" month="11" year="2023"/> | |
| <author login="matthiasblaesing"/> | |
| <compatibility modification="yes"/> | |
| <description> | |
| <ul> | |
| <li> | |
| PushCommand prevented forced pushes by overriding the | |
| force flag in the specification. This overriding | |
| behavior is removed and clients are now responsible to | |
| not specify a forced push if they don't intent one. | |
| </li> | |
| </ul> | |
| </description> | |
| <!-- PushCommand is not in apidoc --> | |
| <class package="org.netbeans.libs.git.jgit.commands" name="PushCommand" link="no"/> | |
| </change> | |
| <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> | |
| </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> |