Hot answers tagged

16

I'll add to this as needed. Since you have ssh access to the server, start there. 1) Connect via ssh to the production server via Terminal (or iTerm app). cd to the root of your site (or the directory where you want to track changes). 2) Type the following: git config --global user.name "SITE NAME Prod Server" git config --global user.email johndoe@...


5

I don't think it's left that many short to be honest. Most developers I'm aware of save their templates as files. Whilst I'd always recommend having version control in place, you don't need it, you can still save templates as files without Git. As for tutorials, the Ellislab docs are pretty explicit about how it's done. The learning curve for Git isn't ...


3

Can you define what you mean by "a modern CMS"? Any database driven system will face similar problems when using Git source control. This isn't specifically an ExpressionEngine problem. The only systems that wouldn't suffer this difficulty are those using flat file architecture. I often use Git with ExpressionEngine. The only possible sticking point being, ...


2

I normally use a shared database between development and staging servers and a separate database for the live one. This prevents issues like this from happening and makes sure that your changes only go live when you intend them to. Of course, this also introduces the age-old database sync issue, forcing you to manually replicate database changes across ...


2

Besides all the other answers, I like to add a git "hook" that would do a database dump into a directory inside my repo, then perform a "git add", every time I do a commit. You can achieve this by creating a file named "pre-commit" inside .git/hooks/ and making executable (not sure how to do that on windows machines). In my mac (using MAMP) I have the ...


2

Low Variables variable syncing works like this. Note that each time you save a LV in the Control Panel, its DB edit date is updated: Vars marked save as file are fetched from the DB; Variable directory is created if not there; For each file in the DB, LV checks if the file is there; If not, the file is created; If the file is there, the date is checked (...


1

Run a local dev server on your machine. To make life easy use MAMP, XAMPP, or similar. Maybe try Virtual Box/Vagrant if you're feeling saucy. I'm on a Mac so I use MAMP Pro and SequelPro to manage server and database. Install Git on your local machine. Set up a remote private Git repo at Bitbucket/Github. Bitbucket is free, even for private repos. Set up ...


1

Mountee shutting down forced me to change my workflow as well. Here's what's working for me: Save templates as files. Buy Coda 2 (panic.com) Setup a site in Coda with a local git repository, and the web server as the remote location. When I start implementing a new feature, I edit templates on the remote server. When it's all working, I sync everything ...


1

Strictly speaking, this isn't an issue with either EE or Git, but just a quirk in the Siteworx hosting control panel that Nexcess uses. You can get around it by, instead of adding a subdomain to one of the domains you already configured in the panel, you add it as a new "secondary domain". To do this, go to Hosting Features -> Domains -> Secondary. Enter the ...


1

You can source control all templates as you can set them to be saves as files. The only thing you'll have an issue with is the db but show me a db driven cms for less then $10k that does that well. There is heaps of info out there on how to run a EE site with GIT, a small bit of googling will get you there but many many of us run it in GIT very nicely ...


Only top voted, non community-wiki answers of a minimum length are eligible