lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.LFD.1.10.0805181513590.32253@woody.linux-foundation.org>
Date:	Sun, 18 May 2008 15:26:25 -0700 (PDT)
From:	Linus Torvalds <torvalds@...ux-foundation.org>
To:	Jesper Juhl <jesper.juhl@...il.com>
cc:	Theodore Tso <tytso@....edu>, Thomas Gleixner <tglx@...utronix.de>,
	LKML <linux-kernel@...r.kernel.org>, Ingo Molnar <mingo@...e.hu>,
	"H. Peter Anvin" <hpa@...or.com>
Subject: Re: [GIT pull] x86 fixes for 2.6.26



On Mon, 19 May 2008, Jesper Juhl wrote:
> 
> Ok, thanks a lot.  Now, I have one final question for you.
> In order to be able to play around with the patches, see if they
> apply, fix them up, test for merge conflicts etc etc, I obviously need
> a tree with content, not just a bare tree. But I see on
> master.kernel.org that all the published trees are bare trees.

I think just about *everybody* does their own development on their own 
machine. I know I do, and I'm pretty certain that everybody else does too. 
Then we just upload the end result to master.kernel.org into a bare 
repository that is only used for exporting to others, never for anything 
else.

> So, I assume I create a tree in my homedir like so;
>   $ git clone -l -s /pub/scm/linux/kernel/git/torvalds/linux-2.6.git /home/juhl/trivial-work-tree
> create all the branches and do all the work in that one,

You can do that, and actually work on master.kernel.org, but do you really 
want to?

It's much easier to work at home (or office, whatever - on your own 
workstation), unless you have some really weak computer.

Then, the easiest way to publish the result is to just create a bare 
repository on master.kernel.org, and push to it. And just make sure that 
you pre-populate that bare repo with my tree, so that when you push from 
your home machine, it only pushes the (smallish) actual changes!

So the workflow I'd suggest is:

 - do all the work on your own hardware

 - create the initial (bare) kernel.org tree with

	cd /pub/scm/linux/kernel/git/juhl
	git clone --bare -l -s ../torvalds/linux-2.6 trivial-2.6

 - then just push to that tree from your own machine

and voila, you're all done.

> But that only seems to make my master branch accessible, not new
> branches I create in my work tree.  How do I go about doing this
> properly?

If you do the "clone locally, then push from the remote", the "push" stage 
is when you decide which branches you'll want to push.

The easiest thing to do is to just use "--all", which will push all the 
branches to the remote (you may want to use "--force" if this ends up 
being a non-fast-forward, which can happen - for example - just because 
your "clone" might have cloned a later version of my tree than the one you 
based your own 'master' branch off).

But you can push individual branches too, see 'man git-push'.

If you really *want* to work on master.kernel.org, you can do so, and you 
can do the final clone with "git clone --mirror --bare" and use that as a 
way to clone all branches as a mirror of your work-tree, but it really is 
a fairly unusual way to work.

		Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ