projects
/
git.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
send-pack --thin: use "thin pack" delta transfer.
[git.git]
/
send-pack.c
diff --git
a/send-pack.c
b/send-pack.c
index
990be3f
..
ad22da5
100644
(file)
--- a/
send-pack.c
+++ b/
send-pack.c
@@
-12,6
+12,7
@@
static const char *exec = "git-receive-pack";
static int verbose = 0;
static int send_all = 0;
static int force_update = 0;
static int verbose = 0;
static int send_all = 0;
static int force_update = 0;
+static int use_thin_pack = 0;
static int is_zero_sha1(const unsigned char *sha1)
{
static int is_zero_sha1(const unsigned char *sha1)
{
@@
-41,7
+42,10
@@
static void exec_rev_list(struct ref *refs)
int i = 0;
args[i++] = "rev-list"; /* 0 */
int i = 0;
args[i++] = "rev-list"; /* 0 */
- args[i++] = "--objects"; /* 1 */
+ if (use_thin_pack) /* 1 */
+ args[i++] = "--objects-edge";
+ else
+ args[i++] = "--objects";
while (refs) {
char *buf = malloc(100);
if (i > 900)
while (refs) {
char *buf = malloc(100);
if (i > 900)
@@
-361,6
+365,10
@@
int main(int argc, char **argv)
verbose = 1;
continue;
}
verbose = 1;
continue;
}
+ if (!strcmp(arg, "--thin")) {
+ use_thin_pack = 1;
+ continue;
+ }
usage(send_pack_usage);
}
if (!dest) {
usage(send_pack_usage);
}
if (!dest) {