зеркало из https://github.com/microsoft/git.git
Server-side support for user-relative paths.
This patch basically just removes the redundant code from {receive,upload}-pack.c in favour of the library code in path.c. Signed-off-by: Andreas Ericsson <ae@op5.se> Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Родитель
0870ca7fab
Коммит
8d63013291
|
@ -248,11 +248,11 @@ static void unpack(void)
|
|||
int main(int argc, char **argv)
|
||||
{
|
||||
int i;
|
||||
const char *dir = NULL;
|
||||
char *dir = NULL;
|
||||
|
||||
argv++;
|
||||
for (i = 1; i < argc; i++) {
|
||||
const char *arg = *argv++;
|
||||
char *arg = *argv++;
|
||||
|
||||
if (*arg == '-') {
|
||||
/* Do flag handling here */
|
||||
|
@ -265,18 +265,9 @@ int main(int argc, char **argv)
|
|||
if (!dir)
|
||||
usage(receive_pack_usage);
|
||||
|
||||
/* chdir to the directory. If that fails, try appending ".git" */
|
||||
if (chdir(dir) < 0) {
|
||||
if (chdir(mkpath("%s.git", dir)) < 0)
|
||||
die("unable to cd to %s", dir);
|
||||
}
|
||||
if(!enter_repo(dir, 0))
|
||||
die("'%s': unable to chdir or not a git archive", dir);
|
||||
|
||||
/* If we have a ".git" directory, chdir to it */
|
||||
chdir(".git");
|
||||
putenv("GIT_DIR=.");
|
||||
|
||||
if (access("objects", X_OK) < 0 || access("refs/heads", X_OK) < 0)
|
||||
die("%s doesn't appear to be a git directory", dir);
|
||||
write_head_info();
|
||||
|
||||
/* EOF */
|
||||
|
|
|
@ -248,7 +248,7 @@ static int upload_pack(void)
|
|||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
const char *dir;
|
||||
char *dir;
|
||||
int i;
|
||||
int strict = 0;
|
||||
|
||||
|
@ -275,18 +275,9 @@ int main(int argc, char **argv)
|
|||
usage(upload_pack_usage);
|
||||
dir = argv[i];
|
||||
|
||||
/* chdir to the directory. If that fails, try appending ".git" */
|
||||
if (chdir(dir) < 0) {
|
||||
if (strict || chdir(mkpath("%s.git", dir)) < 0)
|
||||
die("git-upload-pack unable to chdir to %s", dir);
|
||||
}
|
||||
if (!strict)
|
||||
chdir(".git");
|
||||
if (!enter_repo(dir, strict))
|
||||
die("'%s': unable to chdir or not a git archive", dir);
|
||||
|
||||
if (access("objects", X_OK) || access("refs", X_OK))
|
||||
die("git-upload-pack: %s doesn't seem to be a git archive", dir);
|
||||
|
||||
putenv("GIT_DIR=.");
|
||||
upload_pack();
|
||||
return 0;
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче