Skip to content

Commit 098b9a3

Browse files
committed
refactor
- update `gix-fsck` crate status with all obvious features of `git-fsck`
1 parent 1dd3d67 commit 098b9a3

File tree

1 file changed

+14
-10
lines changed

1 file changed

+14
-10
lines changed

crate-status.md

+14-10
Original file line numberDiff line numberDiff line change
@@ -776,16 +776,20 @@ See its [README.md](https://github.com/Byron/gitoxide/blob/main/gix-lock/README.
776776
* [x] [validate][tagname-validation] tag names
777777

778778
### gix-fsck
779-
* [x] validate connectivity when provided a specific commit as a starting point
780-
* [ ] validate connectivity of all `refs` in the index
781-
* [ ] identify objects that exist but are not reference by any reference nodes (e.g. `refs` or a provided commit)
782-
* [ ] add support for various options
783-
* [ ] write dangling objects to the `.git/log-found` directory structure
784-
* [ ] `strict` mode, to check for tree objects with `g+w` permissions
785-
* [ ] consider reflog entries as reference nodes/heads
786-
* [ ] when reporting reachable objects, include _how_ they are reachable
787-
* [ ] which reference node(s) made them reachable
788-
* [ ] parent commit(s)
779+
* [x] validate connectivity and find missing objects starting from…
780+
- [x] commits
781+
- [ ] tags
782+
- [ ] tree-cache in the `index` or any entry within
783+
* [ ] validate object hashes during connectivity traversal
784+
* [ ] skipList to exclude objects which are known to be broken
785+
* [ ] validate blob hashes (connectivity check
786+
* [ ] identify objects that exist but are not reachable (i.e. what remains after a full graph traversal from all valid starting points)
787+
* [ ] write dangling objects to the `.git/log-found` directory structure
788+
* [ ] `strict` mode, to check for tree objects with `g+w` permissions
789+
* [ ] consider reflog entries from `ref` starting points
790+
* [ ] when reporting reachable objects, provide the path through which they are reachable, i.e. ref-log@{3} -> commit -> tree -> path-in-tree
791+
* [ ] limit search to ODB without alternates (default is equivalent to `git fsck --full` due to ODB implementation)
792+
* [ ] all individual [checks available in `git fsck`](https://git-scm.com/docs/git-fsck#_fsck_messages) (*too many to print here*)
789793

790794
### gix-ref
791795
* [ ] Prepare code for arrival of longer hashes like Sha256. It's part of the [V2 proposal][reftable-v2] but should work for loose refs as well.

0 commit comments

Comments
 (0)