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

Re: git with large files...

From
DNDrew Northup <n1xim.email@gmail.com>
Date
Jul 29, 2012, 18:47 UTC
Message-ID
<CAM9Z-n=52qeGPkFo77hvhLYEFFuZP02hckyGD3aR+py5PB7wbw@mail.gmail.com>
In-Reply-To
<CAMK1S_hO5g5p4NjoVcxYFTt_KZ-wBRJk=OCveeszwr8U2LeZbg@mail.gmail.com>
On Mon, Jul 23, 2012 at 12:23 AM, Sitaram Chamarty <sitaramc@gmail.com> wrote:
Show 18 quoted lines
> On Mon, Jul 23, 2012 at 2:24 AM, Junio C Hamano <gitster@pobox.com> wrote:
>> merlyn@stonehenge.com (Randal L. Schwartz) writes:
>>
>>>>>>>> "Darek" == Darek Bridges <darek.bridges@me.com> writes:
>>>
>>> Darek> I use git for many things, but I am trying to work out the
>>> Darek> workflow to use git for deployment.
>>>
>>> Don't.
>>
>> Yeah, "don't think 'git checkout' is a way to 'deploy'".  Using Git
>> as a transport measure is probably fine.
>
> You can also try
> http://sitaramc.github.com/the-list-and-irc/deploy.html.  Whether it's
> saying you *can* use git for deploying something, or you *can* but
> *should not*, or you *cannot*, will depend on your own thoughts on the
> matter ;-)

After a couple of false starts, I think that Sitaram came closest to what Darek was asking about.

Now, as somebody who is using Git currently to stage things to "deployment" (I may change to SVN due to office politics--which will double my workload on rollout of updates, but I'm not saying any more than that in public) on production web servers, I have a few comments.

We have several WordPress instances @$work where we are using Git to stage template changes out to our development server (where I've contemplated putting the lessons in Sitaram's article to use) before merging those changes back into the "Production" branch (after suitable testing) and pulling them from a central gitolite into the live server. It works and it respects the posix extended ACLs on the destination host (which is what you actually want on a live web server). Even better, it provides a safe way of tracking and merging back in any "opportunistic" changes that were made directly in the development or production servers so that they are not lost.

Thought must be applied to do this safely, but that's the way it usually is on web servers. To those who say admins should be using RPM, DEB, or any other "generic package management" software to deploy non-system updates to in-house web servers may I kindly indicate that it often doesn't make sense to do so unless each and every website has its own server and IP address--and you are deploying tens of thousands of them. Most of us can't afford that. (Yes, there is an overhead to building packages. I've done it enough times to know about that quite intimately.)

Packages and package management are great for system software but they are not a good solution for installing client code into a webspace on a shared server (yes, heresy, I know). For this common use case Git is not a half-bad ADDITION to the toolkit of a website development and maintenance team.

-- 
-Drew Northup
--------------------------------------------------------------
"As opposed to vegetable or mineral error?"
-John Pescatore, SANS NewsBites Vol. 12 Num. 59
Previous: Kalle Launiala
Message 15 of 15 in “git with large files...”
  1. Darek BridgesJul 20, 2012
  2. Randal L. SchwartzJul 20, 2012
  3. Martin LanghoffJul 20, 2012
  4. David AguilarJul 21, 2012
  5. Elia PintoJul 21, 2012
  6. Martin LanghoffJul 21, 2012
  7. Elia PintoJul 21, 2012
  8. Elia PintoJul 22, 2012
  9. Kalle LaunialaJul 22, 2012
  10. NickJul 21, 2012
  11. Martin LanghoffJul 21, 2012
  12. Junio C HamanoJul 22, 2012
  13. Sitaram ChamartyJul 23, 2012
  14. Kalle LaunialaJul 23, 2012
  15. Drew NorthupJul 29, 2012

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.