Re: [PATCH 1/2] Add git-archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



2006/9/6, Junio C Hamano <junkio@xxxxxxx>:
Franck Bui-Huu <vagabon.xyz@xxxxxxxxx> writes:

> Interesting, could you explain why static variables are not nice ?

Mostly taste and a little bit of re-entrancy worries.


OK.

> You might have missed my second patch:
>
>               "[PATCH 2/2] Add git-upload-archive"
>
> Basically the server can also use 'reason' to report a failure
> description during NACK. I find it more useful than the simple
> "server sent EOF" error message.

That's a good intention, but we would also need to convey the
"server side found problem and died with these error() output"
anyway,

OK.


> One bad side is that we need to malloc this embedded structure.

Not at all, if you read the example I did you would notice that
I changed parse_extra for each backend to return this structure
allocated for that particular backend.


sorry I wasn't clear. My point was that the structure need to be
'mallocated'. Which funtion allocate it doesn't matter, we will need
to free it later. That's what I tried to avoid with the alternative I
sent you in my previous email. Do you think we could use it ?

>>> +static int run_remote_archiver(struct archiver_struct *ar, int argc,
>>> +                          const char **argv)
>>> +{
>>> +   char *url, buf[1024];
>>> +   pid_t pid;
>>> +   int fd[2];
>>> +   int len, rv;
>>> +
>>> +   sprintf(buf, "git-upload-%s", ar->name);
>>
>> Are you calling git-upload-{tar,zip,rar,...} here?
>
> yes. Actually git-upload-{tar,zip,...} commands are going to be
> removed, but git-daemon know them as a daemon service.

That would break "git-archive --remove=ssh://site/repo treeish"
wouldn't it?


Yes. But couldn't we make some alias like:

alias git-upload-tar='git-upload-archive --format=tar'
alias git-upload-zip='git-upload-zip --format=zip'

and the same could be done if we plan to remote git-tar-tree command:

alias git-tar-tree='git-archive --format=tar'

These alias would be internal to git (always defined)

--
              Franck
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]