Replies: 6 comments
-
Dulwich itself ships a command-line tool named 'dulwich' that is supposed to mimick the 'git' command. It's not the primary focus of the project though, and is not particularly polished. I'm not aware of any other non-GPL command-line tools around Dulwich. |
Beta Was this translation helpful? Give feedback.
-
Thanks a lot. BTW, do you have somewhere a list of the implemented commands in that tool and to what degree such commands are implemented, or if they have any syntax difference from the official |
Beta Was this translation helpful? Give feedback.
-
If you run that command without any arguments it prints a list of implemented commands: Usage: ./bin/dulwich <rev-list|status|ls-remote|fetch-pack|help|show|rm|clone|describe|pack-objects|ls-tree|fsck|update-server-info|tag|receive-pack|diff|upload-pack|archive|diff-tree|reset|pull|daemon|remote|log|symbolic-ref|dump-index|repack|init|stash|fetch|add|commit-tree|web-daemon|ls-files|check-mailmap|push|commit|check-ignore|dump-pack> [OPTIONS...] (Note that this is not a full usable replacement for C git yet, since e.g. merge is not implemented). |
Beta Was this translation helpful? Give feedback.
-
Thanks a lot!! I'll take a look and see if it has all the functionality I need (which is still basic at this point). I hope "merge" is implemented at some point. If you have a wish list, let me add my vote for giving more importance to the |
Beta Was this translation helpful? Give feedback.
-
In the python app Pythonista, for iOS, we implemented a command line git for a community developed shell emulator http://github.com/ywangd/stash.git. See the lib/git, and bin/git.py. This is based around dulwich porcelain, though we tried to add functionality to more closely emulate real git in some cases. This is pretty rough around the edges, and depended on gittle/funky(A dependency I have mostly removed but not yet published). I have a rough, mostly useful, merge command (based on a diff3 command with an mit license) and tried to implement a more complete fetch, branch, remote and reset commands. Some of the code is dealing with the idiosyncrasies of pythonista/stash, but there are probably some ideas that someone could run with. |
Beta Was this translation helpful? Give feedback.
-
I've filed #645 about expanding the 'dulwich' command. My personal interest is more in the API side of things, so I'm hoping somebody else is interested in picking up working on the command-line tool. I'll close this issue, since the original question has been answered. |
Beta Was this translation helpful? Give feedback.
-
Hi,
Are you aware of any project that has written a command-line tool based on Dulwich, for (at least partially) being an alternative to the official
git
command? I'm considering moving all my repositories to git, but I don't like using a GPL version control system, I prefer to use a non-GPL one, for a more uniform license across my tree.Alternatively, if you know of any other non-GPL git implementation that provides a command-line tool that could act as a
git
replacement, please tell.Beta Was this translation helpful? Give feedback.
All reactions