Hacker News new | past | comments | ask | show | jobs | submit login

> With Git you can write shell scripts and tools that wrap git, but that isn't quite the same thing as an extension

Git itself is a bunch of scripts that wrap (lower-level) git tools. For example git's "native" `git rebase` command is a shell script:

https://github.com/git/git/blob/master/git-rebase.sh

You can create your own commands simply by putting a script called `git-whatever.sh` in your path, e.g. git svn-abandon:

https://github.com/nothingmuch/git-svn-abandon

I don't know hg's extensions, so perhaps I don't know what I'm missing, but I have no complaints about git's extensibility. It allows editing of its entire database and all branches (I've been able to convert SVN repo and re-create all merges, change authorship and dates of commits) and has hook scripts that can intercept and customize important actions in the workflow (I've been able to build non-trivial website deployment automation using git as a base).




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: