Cogito (software)

From Wikipedia, the free encyclopedia

Cogito (originally git-pasky) is a revision control system layered on top of Git. It is historically the first Git frontend, which appeared in April 2005, just days after Git itself. While Git was initially meant just as the low-level interface, Cogito started with the stated goal of becoming a user-friendly front-end.

Cogito is generally considered to be more familiar to people used to working with other SCM tools like CVS and Subversion, although it still follows the model of distributed development used by Git.

Cogito has significantly fewer sub-commands than Git, in line with its purpose to present a simple user interface sufficient for common workflows. As of May 2006, Cogito has only 41 sub-commands, compared to Git's 119. Some features that started in Cogito migrated later to Git, making Git more suitable for standalone use. As an example of simplification of the interface, Cogito hides the concept of "index cache" from the users. Any modified file is considered eligible for commit by Cogito, just as in CVS or Subversion.

Cogito has full compatibility with remote Git repositories. It also retains a high degree of compatibility with Git for local operations. Many Git commands can be used safely on a Cogito managed repository. Conversely, most Cogito commands can be used on repositories primarily managed by Git or StGIT.

Cogito is implemented as a set of Bash scripts (unlike Git, which is written mostly in C and portable Unix shell).

As of April 2007 the project is stalled and declared "for sale", because a lot of the functionality has already been taken over by git, and the maintainer, Petr Baudiš, decided it would be better to focus on improving git-core.[1] Cogito is released under the GNU GPL.

As of May 2008, Cogito does not work well with recent Git versions, and Cogito users are advised to use Git directly or use some other frontends such as EasyGit.[2]


  1. ^ Petr Baudiš (19 April 2007). "Cogito is for sale". Newsgroupgmane.comp.version-control.git. Usenet: Archived from the original on 30 June 2012.
  2. ^ Petr Baudiš. "Re: Documentation/Code Mismatch: cg-switch -l". Newsgroupgmane.comp.version-control.git. Usenet:[permanent dead link]

External links[edit]