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

Integration branching

From
KHKai Hendry <hendry@aplixcorp.com>
Date
Apr 7, 2008, 13:02 UTC
Message-ID
<b24851260804070602o11b93923m7ce7d79d5f59547b@mail.gmail.com>

I've been asked to setup & host a git repo of an "integration branch" of WebKit for our developers.

So I expected it to work like so:

git clone git://git.webkit.org/WebKit.git git checkout -b test

<Make a few small changes and commit>

git-config remote.upload.url ssh://git.webvm.net/srv/git/webkit-test x61:~/aplix/test/WebKit% git push --thin -v upload test Pushing to ssh://git.webvm.net/srv/git/webkit-test Counting objects: 371612, done. Compressing objects: 100% (67851/67851), done. Writing objects: 11% (43886/371612), 25.32 MiB | 88 KiB/

However when uploading the branch it seems to upload _everything_ which is far too big and impractical. Couldn't it just somehow reference the remote branch and just publish the patch of the "small changes"?

When doing a git-http-push instead of ssh, git resulted in a "Out of memory" error:

   1. git clone git://git.webkit.org/WebKit.git # Check it out
   2. git checkout -b test # create a "test" branch and switch to it
   3. echo blah >> ChangeLog # change something
   4. git commit -a # commit that test change
   5. git-config remote.upload.url http://moto@moto.webvm.net/moto.git
# configure the upload url
   6. git push upload test # fatal: Out of memory, malloc failed
Was this the fault of the server(nox) or client(x61)?

x61:~% git --version git version 1.5.4.5 nox:~% git --version git version 1.5.4.4

So is there some better way of publishing a branch? Without uploading the whole WebKit?

I did try something else, that was to create a webkit repo on the server nox like so:

nox:/srv/git/webkit% git --bare init --shared nox:/srv/git/webkit% git --bare fetch git://git.webkit.org/WebKit.git master:master git fetch -f git://git.webkit.org/WebKit.git master:master # again forcing updates

And let developers branch from that. This proved a little cumbersome as I need to manually force updates to webkit trunk when developers asked me to do that. However once a developer cloned ssh://git.webvm.net/srv/git/webkit. Creating a test branch 'deleteme' and then `git push origin deleteme` was extremely fast. So I guess this is the right way to achieve my goals?

Any suggestions and tips would be greatly appreciated!
Next: Junio C Hamano
Message 1 of 11 in “Integration branching”
  1. Kai HendryApr 7, 2008
  2. Junio C HamanoApr 7, 2008
  3. Kai HendryApr 7, 2008
  4. Avery PennarunApr 7, 2008
  5. Kai HendryApr 8, 2008
  6. Junio C HamanoApr 8, 2008
  7. Mike HommeyApr 8, 2008
  8. Kai HendryApr 8, 2008
  9. Mike HommeyApr 8, 2008
  10. Mike HommeyApr 10, 2008
  11. Junio C HamanoApr 7, 2008

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.