summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 0870ca7)
raw | patch | inline | side by side (parent: 0870ca7)
author | Andreas Ericsson <exon@op5.se> | |
Thu, 17 Nov 2005 19:37:14 +0000 (20:37 +0100) | ||
committer | Junio C Hamano <junkio@cox.net> | |
Sun, 20 Nov 2005 04:50:38 +0000 (20:50 -0800) |
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>
{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>
receive-pack.c | patch | blob | history | |
upload-pack.c | patch | blob | history |
diff --git a/receive-pack.c b/receive-pack.c
index 8f157bc3f0ef1f9d96bca18fc81854fc24bff936..18735061206a813d523fdf29dd3e5b06899f1a1d 100644 (file)
--- a/receive-pack.c
+++ b/receive-pack.c
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 */
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 we have a ".git" directory, chdir to it */
- chdir(".git");
- putenv("GIT_DIR=.");
+ if(!enter_repo(dir, 0))
+ die("'%s': unable to chdir or not a git archive", 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 */
diff --git a/upload-pack.c b/upload-pack.c
index be63132804252e9a2f94ce1166ef9fa319a845fd..1834b6ba8c52ea9d8e166d9bc14a4156c289ba20 100644 (file)
--- a/upload-pack.c
+++ b/upload-pack.c
int main(int argc, char **argv)
{
- const char *dir;
+ char *dir;
int i;
int strict = 0;
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 (access("objects", X_OK) || access("refs", X_OK))
- die("git-upload-pack: %s doesn't seem to be a git archive", dir);
+ if (!enter_repo(dir, strict))
+ die("'%s': unable to chdir or not a git archive", dir);
- putenv("GIT_DIR=.");
upload_pack();
return 0;
}