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

Re: [PATCH] proposed v3 source format using .git.tar.gz

On Sun, Oct 07, 2007 at 10:49:48AM -0500, Manoj Srivastava wrote:
>         OK, commenting on this with my "I use arch" hat on. If I
>  understand correctly, we are proposing shipping a working directory in
>  the .deb; and not shipping an orig.tar.gz nor a diff.gz file. I like

You probably mean source package here and not .deb. Also the original
proposal just means shipping the repository data, since most DVCS can
easily create a working directory from that.

>  the idea; and I think I can support nested arch packages (submodules in
>  .git speak), based on the examples I have seen of joey's patch and
>  Colin's for bzr -- I just need some more information about what exactly
>  some of these git commands do.
> sub prep_tar:
>   make sure we have an ./{arch} directory.
>   Look for nested submodules:
>    $tree_root=$($TLA tree-root);
>    @nested=`$TLA inventory -t --nested "$tree_root"`;
> ** Why are we checking for uncommitted files here? I would think that
>    people would have done an export to actually build packages **

The whole idea of the proposal is to NOT create an export.

>    for each tree_root and nested; do
>      run $TLA CHANGES
>      map { $list{${NESTED_PATH}/$_} => 1; } join ",", `$TLA inventory -s`
>    done
>    For all files in exclude list, go and set values in %list to 0 (or
>    delete the key)
> ** I have no idea what the prune and shallow copy commands do, or the
>    arch equivalent **

git gc --prune deletes old data that isn't needed anymore. This is
needed since all other git commands never change or overwrite data
(file data, this is obviously not true for meta data), they only
add some.

> sub post_unpack_tar
>   make sure we have an ./{arch} directory.Look for nested submodules:
>    $tree_root=$($TLA tree-root);
>    @nested=`$TLA inventory -t --nested "$tree_root"`;
> ** arch hooks are per user, not per repo -- iirc **
> ** what does git-config do? or bzr checkout? **

git-config is just an cli interface to the .git/config file.
Since we only ship the repository we need to create the working
tree. This is what git/bzr checkout do.

>         Actually, at this point I am beginning to question my
>  understanding of the proposal.  If we are shipping a working tree, what
>  is this step doing?
>         Is this an svn update equivalent?

No, that would be git fetch/pull (and probably something similar named
in bzr)

Frank Lichtenheld <djpig@debian.org>
www: http://www.djpig.de/

Reply to: