Commit Operations
   HOME

TheInfoList



OR:

In
version control Version control (also known as revision control, source control, and source code management) is the software engineering practice of controlling, organizing, and tracking different versions in history of computer files; primarily source code t ...
systems, a commit is an operation which sends the latest changes of the source code to the
repository Repository may refer to: Archives and online databases * Content repository, a database with an associated set of data management tools, allowing application-independent access to the content * Disciplinary repository (or subject repository), an ...
, making these changes part of the head revision of the repository. Unlike commits in data management, commits in version control systems are kept in the repository indefinitely. Thus, when other users do an update or a checkout from the repository, they will receive the latest committed version, unless they specify that they wish to retrieve a previous version of the source code in the repository. Version control systems allow rolling back to previous versions easily. In this context, a commit within a version control system is protected as it is easily rolled back, even after the commit has been applied.


Usage


Git

To commit a change in
git Git () is a distributed version control system that tracks versions of files. It is often used to control source code by programmers who are developing software collaboratively. Design goals of Git include speed, data integrity, and suppor ...
on the
command line A command-line interface (CLI) is a means of interacting with software via command (computing), commands each formatted as a line of text. Command-line interfaces emerged in the mid-1960s, on computer terminals, as an interactive and more user ...
, assuming git is installed, the following command is run: git commit -m 'commit message' This is also assuming that the files within the current directory have been staged as such: git add . The above command adds all of the files in the working directory to be staged for the git commit. After the commit has been applied, the last step is to push the commit to the given
software repository A software repository, or repo for short, is a storage location for Package format, software packages. Often a table of contents is also stored, along with metadata. A software repository is typically managed by source or version control, or rep ...
, in the case below named origin, to the branch main: git push origin main Also, a shortcut to add all the unstaged files and make a commit at the same time is: git commit -a -m 'commit message'


Mercurial (hg)

To commit a change in
Mercurial Mercurial is a distributed revision control tool for software developers. It is supported on Microsoft Windows, Linux, and other Unix-like systems, such as FreeBSD and macOS. Mercurial's major design goals include high performance and scalabi ...
on the
command line A command-line interface (CLI) is a means of interacting with software via command (computing), commands each formatted as a line of text. Command-line interfaces emerged in the mid-1960s, on computer terminals, as an interactive and more user ...
, assuming hg is installed, the following command is used: hg commit --message 'Commit Message' This is also assuming that the files within the current directory have been staged as such: hg add The above command adds all of the files in the working directory to be staged for the Mercurial commit. After the commit has been applied, the last step is to push the commit to the given
software repository A software repository, or repo for short, is a storage location for Package format, software packages. Often a table of contents is also stored, along with metadata. A software repository is typically managed by source or version control, or rep ...
, to the default branch: hg push


See also

*
Commit (data management) In computer science and data management, a commit is a behavior that marks the end of a transaction and provides Atomicity (database systems), Atomicity, Consistency (database systems), Consistency, Isolation (database systems), Isolation, and D ...
*


References

{{Version control software Version control systems