From 6c7871ba942d65eeb2088c347778bef08a66d683 Mon Sep 17 00:00:00 2001 From: "Santiago M. Mola" Date: Tue, 9 May 2017 17:42:56 +0200 Subject: README: add table with supported git features --- COMPATIBILITY.md | 111 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 6 +++ 2 files changed, 117 insertions(+) create mode 100644 COMPATIBILITY.md 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 | ✖ | diff --git a/README.md b/README.md index 66f7fae..b1c4cee 100644 --- a/README.md +++ b/README.md @@ -111,6 +111,12 @@ Date: Fri Nov 11 13:23:22 2016 +0100 You can find this [example](_examples/log/main.go) and many other at the [examples](_examples) folder +Comparison With Git +------------------- + +In the [compatibility documentation](COMPATIBILITY.md) you can find a comparison +table of git with go-git. + Contribute ---------- -- cgit From 0e5c17a853aeff26cc1cd97a2226e31526ab2ce5 Mon Sep 17 00:00:00 2001 From: Máximo Cuadros Date: Fri, 12 May 2017 14:22:19 +0200 Subject: capabilities, md styling --- COMPATIBILITY.md | 212 +++++++++++++++++++++++++++---------------------------- 1 file changed, 106 insertions(+), 106 deletions(-) diff --git a/COMPATIBILITY.md b/COMPATIBILITY.md index e990742..81ff6b6 100644 --- a/COMPATIBILITY.md +++ b/COMPATIBILITY.md @@ -1,111 +1,111 @@ -Supported Features -================== +Supported Capabilities +====================== 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 | ✖ | +| Feature | Status | 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 | ✔ | Plain add is supported. Any other flag aren't supported | +| status | ✔ | +| commit | ✔ | +| reset | ✔ | +| rm | ✖ | +| mv | ✖ | +| **branching and merging** | +| branch | ✔ | +| checkout | ✔ | Basic usages of checkout are supported. | +| 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 | ✖ | +| 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 | ✖ | \ No newline at end of file -- cgit