Re: how to combine two clones in a collection

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

 




On Jul 10, 2007, at 1:45 PM, martin f krafft wrote:
I wonder how to create a project with two completely independent
branches which have no common ancestry. I don't think it's possible.
One needs a throwaway branch to create the first commit, then branch
each of the two branches off that, then delete the throwaya branch
(or keep it around).

But this is getting academic now...

But interesting.

What you describe won't create two independent branches. They'll share the root commit. I think what you have do is create the first branch as normal, then clear out the working copy (be sure not to delete .git) and do the commit manually. I believe it goes something like this:

  git init
  # Create files for master
  git add .
  git commit
  rm -rf * .git/index
  # Create files for second branch
  git add .
  tree=$(git write-tree)
  # Edit commit message into some file (commit-msg here)
  commit=$(git commit-tree $tree < commit-msg)
  git update-ref refs/branches/independent $commit

The important bits are to be sure to remove the index so you don't commit the wrong files and the last four lines that do the heavy lifting. You could also create the branch in a second repository and pull it from there into the first (probably simpler), or perhaps trick git-commit into thinking there isn't any commits yet (remove the index and HEAD perhaps?).

~~ Brian
-
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]

  Powered by Linux