Git-Achievements on Windows

UPDATE: Needed to add newly clone git-achievements to your PATH env variable.  Otherwise it will push an index.html file to your current repo and not the git-achievements repo.  Thank you __Adam_ for finding that._

IMPORTANT: Make sure you save your ~/.git-achievements-action.log and ~/.git-achievements.log files if you are transferring from your primary machine.  If you make these files mobile you will be able to use multiple machines.  I forgot mine and now have to start over with git-achievements.  Meh.  More fun.


  • clone_git_achievements 
    • cloned repository locally into my C:code folder (resulting in /c/code/git-achievements by Git Bash CLI path terms)


  • vim_bashrc 
    • ~/ (tilde + forward slash means home directory, where the .bashrc file needs to be)


  •  vim_bashrc_export
    • add the newly clone git-achievements directory to your PATH environment variable
    • alias the git command to call git-achievements
    • git-achievements calls the real git.exe, this just allows it to wrap it and intercept calls


  • source_bashrc
    • source means to refresh/reapply
    • if you don’t do this, your new changes won’t take effect


  • echo_path
    • this outputs your PATH environment variable content.
    • Notice the git-achievements folder at the end. :)


  • git_config
    1. this allows uploads to your fork, on the gh-pages branch


  • check_git_still_works
    1. to ensure you didn’t break git


  • git_achievements_help
    1. shows the git achievements help
    2. generates your first achievement as a “Student” (I already had mine)

Hope you guys have as much fun as I did.  Yeah, yeah, I’m a nerd.  So what?  ;)


Adam D. : Hmmm.. can’t get the uploading of achievements to work… Adam@ADAM-LAPTOP /c/dev/cqrs (BuildingManagement) $ git push Counting objects: 31, done. Delta compression using up to 2 threads. Compressing objects: 100% (16/16), done. Writing objects: 100% (16/16), 2.19 KiB, done. Total 16 (delta 15), reused 0 (delta 0) To fe265ce..81bafd5 master -> master **************************** Git Achievement Unlocked! Apprentice Socialite (Level 1) pushed a branch to a remote repository using git push **************************** Adam@ADAM-LAPTOP /c/dev/cqrs (BuildingManagement) $ git achievements -p cat: git-achievements: No such file or directory Global achievement.upload not set to true, updates left uncommited Adam@ADAM-LAPTOP /c/dev/cqrs (BuildingManagement) $ cd ../git-achievements/ Adam@ADAM-LAPTOP /c/dev/git-achievements (gh-pages) $ git commit -am “another achievment” && git push # On branch gh-pages nothing to commit (working directory clean) Adam@ADAM-LAPTOP /c/dev/git-achievements (gh-pages) $ git status # On branch gh-pages nothing to commit (working directory clean) Adam@ADAM-LAPTOP /c/dev/git-achievements (gh-pages) $ cd - /c/dev/cqrs

Jason Meridth: @Adam I updated post. I messed up on the .bashrc. Needed to add git-achievements to your PATH env. screenshots above. Sorry

Adam D. : I did it but I still get this: Adam@ADAM-LAPTOP /c/dev/cqrs (BuildingManagement) $ git achievements -p Global achievement.upload not set to true, updates left uncommited Adam@ADAM-LAPTOP /c/dev/cqrs (BuildingManagement) $ git config -l core.symlinks=false core.autocrlf=false color.diff=auto pack.packsizelimit=2g help.format=html http.sslcainfo=/bin/curl-ca-bundle.crt sendemail.smtpserver=/bin/msmtp.exe merge.tool=kdiff3 mergetool.kdiff3.path=c:/Program Files (x86)/KDiff3/kdiff3.exe mergetool.kdiff3.cmd=”c:/Program Files/Perforce/p4merge.exe” “$BASE” “$LOCAL” “$REMOTE” “$MERGED” Dymitruk core.editor=vim core.autocrlf=false mergetool.keepbackup=true branch.autosetupmerge=true gui.recentrepo=C:/dev/scanitinternational achievment.upload=true <-—————————————— !!!! core.repositoryformatversion=0 core.filemode=false core.bare=false core.logallrefupdates=true core.symlinks=false core.ignorecase=true remote.origin.fetch=+refs/heads/:refs/remotes/origin/ branch.master.remote=origin branch.master.merge=refs/heads/master branch.autosetuprebase=always branch.FileStorage.remote=origin branch.FileStorage.merge=refs/heads/FileStorage branch.FileStorage.rebase=true remote.local.url=../chrisrepo remote.local.fetch=+refs/heads/:refs/remotes/local/ gui.wmstate=normal gui.geometry=887x427+75+75 171 192 branch.scheduler.remote=origin branch.scheduler.merge=refs/heads/scheduler branch.scheduler.rebase=true branch.EquipmentMaintenance.remote=origin branch.EquipmentMaintenance.merge=refs/heads/EquipmentMaintenance branch.EquipmentMaintenance.rebase=true

Adam D. : Never mind. I can’t spell :)

Jason Meridth


My name is Jason Meridth. I am a continuously learning senior software developer/devops/team lead/development manager trying to not let best be the enemy of better. I reserve the right to change my mind upon obtaining more information. I am also the owner and principal software consultant at Meridth, LLC. If you have any software, hardward, networking, process, etc needs please don't hesitate to reach out to me.

Raspberry Pi Kubernetes Cluster - Part 2

Howdy again.Alright, my 8 port switch showed up so I was able to connect my raspberry 3B+ boards to my home network. I plugged it in wit...… Continue reading

Raspberry Pi Kubernetes Cluster - Part 1

Published on April 07, 2018

SSH - Too Many Authentication Failures

Published on March 28, 2018