git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] git checkout -b: unparent the new branch with -o

From
Erick Mattos <erick.mattos@gmail.com>
Date
Feb 24, 2010, 22:27 UTC
Message-ID
<55bacdd31002241427w2b160614vd1a5977d1820984b@mail.gmail.com>
In-Reply-To
<7viq9nfwg8.fsf@alter.siamese.dyndns.org>

Thanks for the fast response. Your level of commitment to this project is awesome!

2010/2/23 Junio C Hamano <gitster@pobox.com>
Show 10 quoted lines
>
> >       git checkout -ob debian
> >       git clean -df
> >       mkdir Debian
> >       add all control files
> >       ...hack it enough...
> >       git add Debian
> >       git commit
>
> I do not think that is a good example.

Well it is just an example. Its intention is to show some practical data about this proposition.

Show 17 quoted lines
> If you have an extract of an upstream tarball, say frotz-1.42.tar.gz, and
> you are not porting anything older than that version, why not have two
> branches, frotz and master, and do things this way?
>
>  - frotz (or "vanilla" or "upstream") that keeps track of the "vendor
>   drop" without debian/ directory;
>
>  - master that forks from frotz and adds "debian/" and nothing else; and
>
>  - any other topic branches that either fork from frotz if you are fixing
>   upstream bug (or enhancing the vanilla version), or fork from master if
>   you are fixing or enhancing the debianization.
>
> When you receive frotz-1.43.tar.gz, you will advance 'frotz' branch with
> it, and probably fork maint-1.42 branch from master so that you can keep
> supporting older debianized frotz, while merging frotz into master so that
> you can prepare a debianized version of newer package.

The main point here is not the way one prefers to work. It is to let one works the way one wants. In other words: give more versatility to what is already working fine.

> Your debianization will _never_ be totally independent of the vendor
> version, so there is no good reason to have it as a rootless branch.

In matter of fact, mine, personally, is. Please follow: I normally hack software I want to add features I feel is lacking. As a Debian user when I compile it at last to install my version I always do Debian packages so to let APT do its works. As I like not to reinvent the wheel I normally extract the Debian folder from the normal repository packages.

So after a while I just have in a separate Debian branch the commit 1.5, 1.6, .... In case I have to change the Debian files then I will have my commits spread in the middle of this branch.

But as what I had pictured before was a general approach then or you could be right on your example work flow or separating it could be better or whatever! It was just an example.

All commits I post are stuff I use which, following free software ideology, I just want to share so other people could use it too. I know how limited my efforts are to a project like git. A project like that needs people really involved and pro-active like you. But even being a small contributor I really like to contribute because I think the approach of free software community is the best for all and it should be supported by everyone who cares.

I hope some day we could find a way to spread this ideology to everything else in our society. Working just to make things better for no other direct reason; communitarian development; freedom and demo/meritocracy; ... :-)

Sorry for writing too much.
Regards.
Previous: Erick MattosNext: Jakub Narebski
Message 5 of 7 in “git checkout -b: unparent the new branch with -o”
  1. git checkout -b: unparent the new branch with -oErick Mattos, Feb 23, 2010
  2. Junio C HamanoFeb 23, 2010
  3. Erick MattosFeb 24, 2010
  4. Erick MattosFeb 24, 2010
  5. Erick MattosFeb 24, 2010
  6. Jakub NarebskiFeb 23, 2010
  7. Erick MattosFeb 24, 2010

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.