Saturday, June 7, 2014

Snake for android

I've just finished another android app: Snake.

Here are the github repository and the .apk download links.


Monday, June 2, 2014

Remove unwanted file that has been committed several commits ago from git repository

Recently I have been developing a contacts management program and as usual I've been using git for source code management. This program stores all the contacts info in a file, say

Today I bumped into a problem I had never had:
I noticed I had committed several commits ago. As you can imagine, I had no intention of making those contacts info public. I needed to delete that file from my git repository, from all the commits I've committed since I added

I ended up finding a very useful tool for the job: BFG-Repo-Cleaner.

If you have a similar problem, here is a step-by-step guide on how to completely remove an unwanted file that has been committed several commits ago from your git repository:
  1. Download BFG-Repo-Cleaner;
  2. Clone a bare copy of your repository:
    • git clone --mirror
  3. Delete from all the commits:
    • java -jar bfg-1.11.6.jar --delete-files my-repo.git/
  4. Push the repository to save changes:
    • git push
Yes, it is just that simple! If you browse through your past commits, any trace of should now have been completely deleted.