Tuesday, December 20, 2011
So I finally got it all up and running. To start I had to edit my profile script and replaced my explicit path to git set-alias git "c:\Program Files (x86)\Git\bin\git.exe" with a general path to $env:path += ";" + (Get-Item "Env:ProgramFiles(x86)").Value + "\Git\bin". This allows access to all the executables in the git directory!
Next I installed PsGet. Which is dead simple. After that I cloned posh-git to my user folder and ran .\install.ps1. This updates my powershell profile with a link to some ps scripts by Keith.
I finally fell like I have a command friendly command line perfect for development.
Thursday, December 15, 2011
I’ve realized something over the last few nights: 1. altering/extending isn’t as easy as it seems 2. I should take my time and learn the tools I’m using.
Common sense really. Don’t start a new project with new technology and new practices and expect everything to magically work the first time.
So I decided to take a step back and work on the first piece of the puzzle. getting powershell properly configured. The key is profiles. Once you know the term to search there is plenty of information on the topic. I happened to stumble across the term.
First thing to add to my user profile is git
set-alias git “c:\Program Files (x86)\Git\bing\git.exe”
Up next is getting nuget power tools configured. I want to use this feature to manage my dependencies for projects.
Monday, December 12, 2011
The Rhino.Etl enhancement to support dynamics didn’t go as smoothly as I planed. I need to back up and re-think how exactly to do this.
So on to project/idea #2. A RavenDb job store to Quartz. This lead to some new adventures with NuGet. it’s actually quite simple to use, however I don’t like how it dumps everything into a single directory. I like to separate the release libraries from the develop libraries, but I’m sure I can resolve that with some simple powershell scripting.
Now that the basics are in place I will review the AdoJobStore included with Quartz and then real development can begin. If your interested check out the repository: https://github.com/jmeckley/Quartz.RavenJobStore.
Thursday, December 8, 2011
On top of all this I am learning Git and xunit and psake and … well, there is plenty to learn. So after two evenings of battling with the command line I finally have
- Rhino.Etl targeting 4.0
- The build script running
To get to this point I first forked hibernatingrhinos/rhino-etl. I saw this hasn’t been touched in a while. I then issued a pull request from Nathan Palmer. His fork was using a newer version of psake. That caused some conflicts which I then resolved via notepad++ (ouch!).
Then came the task of targeting the 4.0 framework. Step one: change the target framework of each project. Step two: build from VS. That was a quick win. Now the build script.
For reasons I don’t understand msbuild was pointing to v3.5. It didn’t know what 4.0 was and kept reverting to 3.5. I tried setting the $framework_version, but it kept reverting. Finally I used brute force to resolve this and used the absolute path to v4.0 msbuild. Another step closer.
Then came xunit. I needed to use xunit.console.clr4.exe to target the 4.0 framework. Otherwise the build would fail stating the framework was built using an earlier version.
Tuesday, December 6, 2011
Friday, December 2, 2011
Another difference I found was local merging is different as well. with SVN you merge and commit. with GIT you simply merge and the changes are committed automatically.
Wednesday, November 30, 2011
But, I’m pleased to say, that after some reading and few minutes debugging my configs I was able to push my first commit to github. Nothing exciting, just a simple README file.
What I did notice was the lighting fast speed in which the commit was pushed. Everything I read said GIT is faster, but man that was amazing!
I could repost all the commands I used, but that would be repetitive with so many other “getting started” guides out there. Where I made a mistake was defining the local and remote repositories. locally the repository was stored in myfirstgitrepo while the remote was named My-First-Repo. When adding the remote location I first named it myfirstgitrepo. Which was incorrect, that’s the local directory.
To resolve this I had to remove the existing remote connection with git remote rm origin. Then I could add the connection using My-First-Repo. Then a simple git push origin master. Ta-Da! Simple yes, but first steps are usually small.