]> git.ipfire.org Git - thirdparty/git.git/commitdiff
Sync with 2.44.1
authorJohannes Schindelin <johannes.schindelin@gmx.de>
Wed, 24 Apr 2024 07:11:55 +0000 (09:11 +0200)
committerJohannes Schindelin <johannes.schindelin@gmx.de>
Mon, 29 Apr 2024 18:42:30 +0000 (20:42 +0200)
* maint-2.44: (41 commits)
  Git 2.44.1
  Git 2.43.4
  Git 2.42.2
  Git 2.41.1
  Git 2.40.2
  Git 2.39.4
  fsck: warn about symlink pointing inside a gitdir
  core.hooksPath: add some protection while cloning
  init.templateDir: consider this config setting protected
  clone: prevent hooks from running during a clone
  Add a helper function to compare file contents
  init: refactor the template directory discovery into its own function
  find_hook(): refactor the `STRIP_EXTENSION` logic
  clone: when symbolic links collide with directories, keep the latter
  entry: report more colliding paths
  t5510: verify that D/F confusion cannot lead to an RCE
  submodule: require the submodule path to contain directories only
  clone_submodule: avoid using `access()` on directories
  submodules: submodule paths must not contain symlinks
  clone: prevent clashing git dirs when cloning submodule in parallel
  ...

17 files changed:
1  2 
Documentation/git.txt
builtin/clone.c
builtin/submodule--helper.c
builtin/upload-pack.c
config.c
dir.c
dir.h
fsck.c
path.c
promisor-remote.c
read-cache.c
repository.c
setup.c
setup.h
submodule.c
t/t5601-clone.sh
t/t7400-submodule-basic.sh

Simple merge
diff --cc builtin/clone.c
Simple merge
Simple merge
index 15afb97260165bc51cc85bae59b08afb37bfc6a6,272cddaafdd633f120acf3c6f8a87bf0a3fede38..46d93278d9a2e42a2202b2bd484b9cba10caabd6
@@@ -8,7 -8,6 +8,8 @@@
  #include "replace-object.h"
  #include "upload-pack.h"
  #include "serve.h"
 +#include "commit.h"
++#include "environment.h"
  
  static const char * const upload_pack_usage[] = {
        N_("git-upload-pack [--[no-]strict] [--timeout=<n>] [--stateless-rpc]\n"
@@@ -38,7 -37,8 +39,8 @@@ int cmd_upload_pack(int argc, const cha
  
        packet_trace_identity("upload-pack");
        disable_replace_refs();
 -      /* TODO: This should use NO_LAZY_FETCH_ENVIRONMENT */
 -      xsetenv("GIT_NO_LAZY_FETCH", "1", 0);
 +      save_commit_buffer = 0;
++      xsetenv(NO_LAZY_FETCH_ENVIRONMENT, "1", 0);
  
        argc = parse_options(argc, argv, prefix, options, upload_pack_usage, 0);
  
diff --cc config.c
Simple merge
diff --cc dir.c
Simple merge
diff --cc dir.h
Simple merge
diff --cc fsck.c
Simple merge
diff --cc path.c
Simple merge
index ac3aa1e365760596990188548410a16900e005d7,7faf33b4d7cd27f62c2b115955395876e628e3a3..b414922c446c4203dc2194bf78ee1f7dfa475bf0
@@@ -8,6 -8,6 +8,7 @@@
  #include "transport.h"
  #include "strvec.h"
  #include "packfile.h"
++#include "environment.h"
  
  struct promisor_remote_config {
        struct promisor_remote *promisors;
@@@ -23,6 -23,16 +24,15 @@@ static int fetch_objects(struct reposit
        int i;
        FILE *child_in;
  
 -      /* TODO: This should use NO_LAZY_FETCH_ENVIRONMENT */
 -      if (git_env_bool("GIT_NO_LAZY_FETCH", 0)) {
++      if (git_env_bool(NO_LAZY_FETCH_ENVIRONMENT, 0)) {
+               static int warning_shown;
+               if (!warning_shown) {
+                       warning_shown = 1;
+                       warning(_("lazy fetching disabled; some objects may not be available"));
+               }
+               return -1;
+       }
        child.git_cmd = 1;
        child.in = -1;
        if (repo != the_repository)
diff --cc read-cache.c
Simple merge
diff --cc repository.c
Simple merge
diff --cc setup.c
Simple merge
diff --cc setup.h
Simple merge
diff --cc submodule.c
Simple merge
Simple merge
Simple merge