aboutsummaryrefslogtreecommitdiffstats
path: root/COMPATIBILITY.md
diff options
context:
space:
mode:
Diffstat (limited to 'COMPATIBILITY.md')
-rw-r--r--COMPATIBILITY.md111
1 files changed, 111 insertions, 0 deletions
diff --git a/COMPATIBILITY.md b/COMPATIBILITY.md
new file mode 100644
index 0000000..e990742
--- /dev/null
+++ b/COMPATIBILITY.md
@@ -0,0 +1,111 @@
+Supported Features
+==================
+
+Here is a non-comprehensive table of git commands and features whose equivalent
+is supported by go-git.
+
+| Feature | Supported | Notes |
+|---------|-----------|-------|
+| **config** ||
+| config | ✔ | Reading and modifying per-repository configuration (`.git/config`) is supported. Global configuration (`$HOME/.gitconfig`) is not. |
+| **getting and creating repositories** ||
+| init | ✔ | Plain init and `--bare` are supported. Flags `--template`, `--separate-git-dir` and `--shared` are not. |
+| clone | ✔ | Plain clone and equivalents to `--progress`, `--single-branch`, `--depth`, `--origin`, `--recurse-submodules` are supported. Others are not. |
+| **basic snapshotting** ||
+| add | ✔ |
+| status | ✔ |
+| commit | ✔ |
+| reset | ✔ |
+| rm | ✖ |
+| mv | ✖ |
+| **branching and merging** ||
+| branch | ✔ |
+| checkout | ✔ |
+| merge | ✖ |
+| mergetool | ✖ |
+| stash | ✖ |
+| tag | ✔ |
+| **sharing and updating projects** ||
+| fetch | ✔ |
+| pull | ✔ |
+| push | ✔ |
+| remote | ✔ |
+| submodule | ✔ |
+| **inspection and comparison** ||
+| show | ✔ |
+| log | ✔ |
+| shortlog | (see log) |
+| describe | |
+| **patching** ||
+| apply | ✖ |
+| cherry-pick | ✖ |
+| diff | ✖ |
+| rebase | ✖ |
+| revert | ✖ |
+| **debugging** ||
+| bisect | ✖ |
+| blame | ✔ |
+| grep | ✖ |
+| **email** ||
+| am | ✖ |
+| apply | ✖ |
+| format-patch | ✖ |
+| send-email | ✖ |
+| request-pull | ✖ |
+| **external systems** ||
+| svn | ✖ |
+| fast-import | ✖ |
+| **administration** ||
+| clean | ✖ |
+| gc | ✖ |
+| fsck | ✖ |
+| reflog | ✖ |
+| filter-branch | ✖ |
+| instaweb | ✖ |
+| archive | ✖ |
+| bundle | ✖ |
+| prune | ✖ |
+| repack | ✖ |
+| **server admin** ||
+| daemon | |
+| update-server-info | |
+| **advanced** ||
+| notes | ✖ |
+| replace | ✖ |
+| worktree | ✖ |
+| annotate | (see blame) |
+| **gpg** ||
+| git-verify-commit | ✖ |
+| git-verify-tag | ✖ |
+| **plumbing commands** ||
+| cat-file | ✔ |
+| check-ignore | |
+| commit-tree | |
+| count-objects | |
+| diff-index | |
+| for-each-ref | ✔ |
+| hash-object | ✔ |
+| ls-files | ✔ |
+| merge-base | |
+| read-tree | |
+| rev-list | ✔ |
+| rev-parse | |
+| show-ref | ✔ |
+| symbolic-ref | ✔ |
+| update-index | |
+| update-ref | |
+| verify-pack | |
+| write-tree | |
+| **protocols** | |
+| http(s):// (dumb) | ✖ |
+| http(s):// (smart) | ✔ |
+| git:// | ✔ |
+| ssh:// | ✔ |
+| file:// | ✔ |
+| custom | ✔ |
+| **other features** ||
+| gitignore | ✖ |
+| gitattributes | ✖ |
+| index version | |
+| packfile version | |
+| push-certs | ✖ |