Skip to content

Commit

Permalink
Make pull() take some implicit data as explicit arguments
Browse files Browse the repository at this point in the history
Currently it's a bit weird that pull() takes a single argument
describing the commit but takes the write_ref from a global variable.
This makes it take that as a parameter as well, which might be nicer
for the libification in the future, but especially it will make for
nicer code when we implement pull()ing multiple commits at once.

Signed-off-by: Petr Baudis <pasky@suse.cz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
  • Loading branch information
Petr Baudis authored and Junio C Hamano committed Jul 28, 2006
1 parent c2c487c commit c6b69bd
Show file tree
Hide file tree
Showing 5 changed files with 12 additions and 17 deletions.
6 changes: 2 additions & 4 deletions fetch.c
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,6 @@
#include "blob.h"
#include "refs.h"

const char *write_ref = NULL;
const char *write_ref_log_details = NULL;

int get_tree = 0;
int get_history = 0;
int get_all = 0;
Expand Down Expand Up @@ -213,7 +210,8 @@ static int mark_complete(const char *path, const unsigned char *sha1)
return 0;
}

int pull(char *target)
int pull(char *target, const char *write_ref,
const char *write_ref_log_details)
{
struct ref_lock *lock = NULL;
unsigned char sha1[20];
Expand Down
11 changes: 4 additions & 7 deletions fetch.h
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,6 @@ extern void prefetch(unsigned char *sha1);
*/
extern int fetch_ref(char *ref, unsigned char *sha1);

/* If set, the ref filename to write the target value to. */
extern const char *write_ref;

/* If set additional text will appear in the ref log. */
extern const char *write_ref_log_details;

/* Set to fetch the target tree. */
extern int get_tree;

Expand All @@ -46,6 +40,9 @@ extern int get_recover;
/* Report what we got under get_verbosely */
extern void pull_say(const char *, const char *);

extern int pull(char *target);
/* If write_ref is set, the ref filename to write the target value to. */
/* If write_ref_log_details is set, additional text will appear in the ref log. */
extern int pull(char *target, const char *write_ref,
const char *write_ref_log_details);

#endif /* PULL_H */
4 changes: 2 additions & 2 deletions http-fetch.c
Original file line number Diff line number Diff line change
Expand Up @@ -1216,6 +1216,7 @@ int fetch_ref(char *ref, unsigned char *sha1)

int main(int argc, char **argv)
{
const char *write_ref = NULL;
char *commit_id;
char *url;
char *path;
Expand Down Expand Up @@ -1250,7 +1251,6 @@ int main(int argc, char **argv)
}
commit_id = argv[arg];
url = argv[arg + 1];
write_ref_log_details = url;

http_init();

Expand All @@ -1268,7 +1268,7 @@ int main(int argc, char **argv)
alt->path_len = strlen(path);
}

if (pull(commit_id))
if (pull(commit_id, write_ref, url))
rc = 1;

http_cleanup();
Expand Down
4 changes: 2 additions & 2 deletions local-fetch.c
Original file line number Diff line number Diff line change
Expand Up @@ -204,6 +204,7 @@ static const char local_pull_usage[] =
*/
int main(int argc, char **argv)
{
const char *write_ref = NULL;
char *commit_id;
int arg = 1;

Expand Down Expand Up @@ -240,9 +241,8 @@ int main(int argc, char **argv)
usage(local_pull_usage);
commit_id = argv[arg];
path = argv[arg + 1];
write_ref_log_details = path;

if (pull(commit_id))
if (pull(commit_id, write_ref, path))
return 1;

return 0;
Expand Down
4 changes: 2 additions & 2 deletions ssh-fetch.c
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,7 @@ static const char ssh_fetch_usage[] =
" [-c] [-t] [-a] [-v] [--recover] [-w ref] commit-id url";
int main(int argc, char **argv)
{
const char *write_ref = NULL;
char *commit_id;
char *url;
int arg = 1;
Expand Down Expand Up @@ -159,15 +160,14 @@ int main(int argc, char **argv)
}
commit_id = argv[arg];
url = argv[arg + 1];
write_ref_log_details = url;

if (setup_connection(&fd_in, &fd_out, prog, url, arg, argv + 1))
return 1;

if (get_version())
return 1;

if (pull(commit_id))
if (pull(commit_id, write_ref, url))
return 1;

return 0;
Expand Down

0 comments on commit c6b69bd

Please sign in to comment.