User login


Is Git corrupting your font files?

I was getting errors like this in the console:

downloadable font: incorrect file size in WOFF header (font-family: "Graphik" style:normal weight:bold stretch:normal src index:1) source: ... themes/butaro/fonts/Graphik-Bold-Web.woff
downloadable font: rejected by sanitizer (font-family: "Graphik" style:normal weight:bold stretch:normal src index:1) source: ... themes/butaro/fonts/Graphik-Bold-Web.woff

Git would have given you warnings that look like this when you git added the fonts:

Command line Git on Windows

A principal at Agaric regrettably uses Microsoft Windows as a primary operating system. In fact, though, everything works great for him using the open source integrated development environment Eclipse to develop, including using the eGit plugin-- except when something goes wrong, and my (limited) command line knowledge of Git is useless to help him.

Fortunately, it turns out to be pretty easy to have command-line Git on Windows with Eclipse, it just isn't well documented.

Setting up Git to Rebase on Pull Without Command Line


In the .gitconfig file in your home directory, ~ for Linux, and for Windows something like c:\Users\MyName, make sure there are these lines:

  autosetuprebase = always

And in the project-specific .git/config (in the project's root directory), make sure there are lines like these, in particular of course the last one:

[branch "master"]
  remote = origin
  merge = refs/heads/master
  rebase = true

Maintaining a Drupal project with Git: Vacating the master branch

If you've already been committing code to master, do this to start a new 7.x branch and kill off the code in the master branch so noone gets confused.

cd /path/to/repo
git checkout -b 7.x-1.x

git push origin 7.x-1.x

git checkout master
git rm -r *
echo "Real code is not kept on the master branch, to see the code: git checkout 7.x-1.x" > README.txt
git add README.txt
git commit -m "Add a README explaining that the master branch is empty."
git push origin master

Manual update of git-deployed Agaric production site

For a project named (and with the repository and server user name) 'example'.

cd example
git pull

For the git pull to work your public key must be in /home/vlad/.ssh/authorized_keys on the test server ( You can get this value from /home/yourusername/.ssh/authorized_keys. (@Stefan can we in some way give people with access to simone access to use it as the vlad user automatically?)

Git remote branches are different on my local compared to server

The local checkout on my computer and the one on the dev server are looking at the same Git repository, but the results of git branch -a (show all remote branches) is very different.

Reason: git pull origin master does not get all the branch and tag information the way git fetch does!


git fetch origin

Now git branch -a and git checkout branchicareabout both work.

Procedure for resolving a a left-behind branch that has merge conflicts

DRAFT. Better methods from better minds invited!

Situation: Someone has been working away wonderfully on a git branch on your project. You do some crazy stuff with it over the weekend, and when they, on their continnum branch, go git pull --rebase origin continuum and get conflicts they don't know how to deal with, or when they go git fetch origin and git rebase master and have conflicts.

You want to take this off their hands.

Git rebase workflow and git ahead and behind messages

Update: Just set it up to be automatic.

For all new projects:

git config --global branch.autosetuprebase always

For existing projects:

git config branch.master.rebase true

Courtesy Randy Fay's blog post, "Simpler Rebasing (avoiding unintentional merge commits)"

git pull --rebase
rebasing applies your changes on top of the fetched commits.

Quickly search for a git commit hash based on a key word

git log --pretty=oneline | grep 'award'

Tell Drush to Check your Git Repository for Configuration

To consider for Agaric. We don't have one big project so i'm not sure how useful per-project configuration will be...

Syndicate content