@@ -3,16 +3,83 @@ v0.25 + 1
33
44### Changes or improvements
55
6+ * Support for opening, creating and modifying worktrees.
7+
8+ * We can now detect SHA1 collisions resulting from the SHAttered attack. These
9+ checks can be enabled at build time via ` -DUSE_SHA1DC ` .
10+
11+ * Fix for missing implementation of ` git_merge_driver_source ` getters.
12+
13+ * Fix for installed pkg-config file being broken when the prefix contains
14+ spaces.
15+
16+ * We now detect when the hashsum of on-disk objects does not match their
17+ expected hashsum.
18+
19+ * We now support open-ended ranges (e.g. "master..", "...master") in our
20+ revision range parsing code.
21+
22+ * We now correctly compute ignores with leading "/" in subdirectories.
23+
24+ * We now optionally call ` fsync ` on loose objects, packfiles and their indexes,
25+ loose references and packed reference files.
26+
27+ * We can now build against OpenSSL v1.1.
28+
629* ` GIT_MERGE_OPTIONS_INIT ` now includes a setting to perform rename detection.
730 This aligns this structure with the default by ` git_merge ` and
831 ` git_merge_trees ` when ` NULL ` was provided for the options.
932
1033### API additions
1134
35+ * New family of functions to handle worktrees:
36+
37+ * ` git_worktree_list() ` lets you look up worktrees for a repository.
38+ * ` git_worktree_lookup() ` lets you get a specific worktree.
39+ * ` git_worktree_open_from_repository() ` lets you get the associated worktree
40+ of a repository.
41+ a worktree.
42+ * ` git_worktree_add ` lets you create new worktrees.
43+ * ` git_worktree_prune ` lets you remove worktrees from disk.
44+ * ` git_worktree_lock() ` and ` git_worktree_unlock() ` let you lock
45+ respectively unlock a worktree.
46+ * ` git_repository_open_from_worktree() ` lets you open a repository via
47+ * ` git_repository_head_for_worktree() ` lets you get the current ` HEAD ` for a
48+ linked worktree.
49+ * ` git_repository_head_detached_for_worktree() ` lets you check whether a
50+ linked worktree is in detached HEAD mode.
51+
52+ * ` git_repository_item_path() ` lets you retrieve paths for various repository
53+ files.
54+
55+ * ` git_repository_commondir() ` lets you retrieve the common directory of a
56+ repository.
57+
58+ * ` git_branch_is_checked_out() ` allows you to check whether a branch is checked
59+ out in a repository or any of its worktrees.
60+
61+ * ` git_repository_submodule_cache_all() ` and
62+ ` git_repository_submodule_cache_clear() ` functions allow you to prime or clear
63+ the submodule cache of a repository.
64+
65+ * You can disable strict hash verifications via the
66+ ` GIT_OPT_ENABLE_STRICT_HASH_VERIFICATION ` option with ` git_libgit2_opts() ` .
67+
68+ * You can enable us calling ` fsync ` for various files inside the ".git"
69+ directory by setting the ` GIT_OPT_ENABLE_FSYNC_GITDIR ` option with
70+ ` git_libgit2_opts() ` .
71+
72+ * You can now enable "offset deltas" when creating packfiles and negotiating
73+ packfiles with a remote server by setting ` GIT_OPT_ENABLE_OFS_DELTA ` option
74+ with ` GIT_libgit2_opts() ` .
75+
1276* You can now set the default share mode on Windows for opening files using
1377 ` GIT_OPT_SET_WINDOWS_SHAREMODE ` option with ` git_libgit2_opts() ` .
1478 You can query the current share mode with ` GIT_OPT_GET_WINDOWS_SHAREMODE ` .
1579
80+ * `git_transport_smart_proxy_options()' enables you to get the proxy options for
81+ smart transports.
82+
1683### API removals
1784
1885### Breaking API changes
0 commit comments