Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/book/git-editor
Edit and regenerate a Git repository with very little code
https://github.com/book/git-editor
Last synced: about 1 month ago
JSON representation
Edit and regenerate a Git repository with very little code
- Host: GitHub
- URL: https://github.com/book/git-editor
- Owner: book
- Created: 2010-11-18T20:36:04.000Z (about 14 years ago)
- Default Branch: master
- Last Pushed: 2011-02-01T19:30:32.000Z (almost 14 years ago)
- Last Synced: 2024-10-03T12:36:56.907Z (4 months ago)
- Language: Perl
- Homepage: http://search.cpan.org/dist/Git-Editor/
- Size: 117 KB
- Stars: 1
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README
- Changelog: Changes
Awesome Lists containing this project
README
Git-Editor
"Git::Editor" provides the tools to create an editor for a Git
repository.Objects in the Git object database are uniquely identified by their
SHA-1 hash. It's not technically possible to modify an object, as the
hash of the modified object will be different from the original hash,
thus creating a new and different object.However, to the casual user, the unique relationship between a commit
object and its id is largely irrelevant. When someone makes a typo in a
commit message, "git commit --amend" allows to modify the most recent
commit (of course, the truth is that a new commit object is created and
the current branch is simply made to points to the newly created
commit).If the commit having a typo is already the parent of several other
commits, simply creating a new, modified commit is not enough, as the
children of the original commit will still point to it. When doing such
modifications, one wants to preserve the "identity" of the original
commit, and therefore modify (or rather, re-create) all commits that
directly or indirectly depend on it, and not keep any reference to
them."Git::Editor" lets one assemble modification rules ("apply this code to
every commit matching these conditions") and apply them on a list of
commits (obtained through "git rev-list"). All descendant commits (in
the provided commit list) will be rewritten to point to the newly
created commits.The included git-editor program is the recommended tool to edit a Git
repository (rather than rolling your own using Git::Editor> directly).INSTALLATION
To install this module, run the following commands:
perl Makefile.PL
make
make test
make installAlternatively, to install with Module::Build, you can use the following commands:
perl Build.PL
./Build
./Build test
./Build installSUPPORT AND DOCUMENTATION
After installing, you can find documentation for this module with the
perldoc command.perldoc Git::Editor
You can also look for information at:
RT, CPAN's request tracker
http://rt.cpan.org/NoAuth/Bugs.html?Dist=Git-EditorAnnoCPAN, Annotated CPAN documentation
http://annocpan.org/dist/Git-EditorCPAN Ratings
http://cpanratings.perl.org/d/Git-EditorSearch CPAN
http://search.cpan.org/dist/Git-Editor/LICENSE AND COPYRIGHT
Copyright (C) 2010 Philippe Bruhat (BooK)
This program is free software; you can redistribute it and/or modify it
under the terms of either: the GNU General Public License as published
by the Free Software Foundation; or the Artistic License.See http://dev.perl.org/licenses/ for more information.