Using git for a large website

I am looking for some advice on how to use git for a website with a lot of html content.

We have 2 content managers that do basic html coding and upload their work to the server. I am the only developer.

  • Git http.proxy Setting
  • Git Diff with Beyond Compare
  • How do I update a GitHub forked repository?
  • Git fetch github: Index-pack failed
  • Pushing to Git returning Error Code 403 fatal: HTTP request failed
  • Laravel app with package git workflow
  • The site is pretty equally divided between 2 types of content. First is a news content that is posted to a database and displayed throughout the site. The other half of the content is in html. The site uses the templating system and all of the html pages are just the content portion of the page. The templating system adds the header, footer, and navigation. The site as a whole is about 3.5gb (we have a lot of pdfs and pictures).

    The first question is if I dump all of it into git what will happen? I have a feeling it will be fine at first but as changes are made and the site grows will the git repo grow to the point of being unmanageable?

    Second because of the templating system the content managers cant view their work on their local machines without a full web server setup. I would like to avoid this if posible. I have a test server in the office but I can’t figure out how to get git gui to run on a local machine but reference files on the remote server. Simply running git gui over ssh returns an error and teaching them all of the git commands is not going to happen.

    Any suggestions would be a lot of help. We currently are not using any version control and it is a mess. People are constantly overwriting each others work and we don’t have an easy way to move changes from a test server to the production server.

  • Git: Every pull on origin master causes a merge with message
  • GIT repositories with some different files
  • How to bridge git to ClearCase?
  • Git nested submodules and dependencies
  • Azure Git Deployment Failing - Selectnodeversion.js
  • Need to get all file differences (added, modified, renamed) between two Git comits
  • 2 Solutions collect form web for “Using git for a large website”

    Don’t worry about size. We’ve pushed git into “crazy land” with a tree that’s 5.9G and 57k files. The repository is 3.6G (git compresses very nicely). Checkout, merge, commit, push, pull–it’s all as quick as can be. The only thing that takes time is switching to a very old branch (can take a minute or two), or cloning a fresh repository over the network (can take 10 or 20 minutes). That’s just because we have so much bulk in the tree.

    There are git gui front ends. If none of those work, you could put up a web server and install one of the many git web front ends.

    If you want to use distributed version control system (like Git) in an easy way then try Mercurial (hg). It works more or less like Git, but it is generally easier to use. Git, however, is more flexible and allows to do all sort of trics, but it results in a more difficult usage.

    Mercurial has also very nice Windows shell extension – TortoiseHG, which makes HG usage very simple, even for someone not particularly experienced with version control.

    Don’t worry about repo size in either case, Linux Kernel is kept in Git, while Java 7 JDK developers use Mercurial, these are huge projects.

    Git Baby is a git and github fan, let's start git clone.