Archive for May, 2010

24 May 2010

That No SQL Thing: Column (Family) Databases

No Comments FluentCassandra

Just wanted to mention a very well written post that explains Column Family Databases, like that of Cassandra, in the most straight forward way that I have found to explain the concept to .NET developers.  I have no doubt that most of you who read Ayende’s blog have already seen this, but for those that might have missed the post, or don’t follow him, here it is:

http://ayende.com/Blog/archive/2010/05/14/that-no-sql-thing-column-family-databases.aspx

The fictitious fluent interface that he demonstrates in this blog post was a great inspiration to my own Fluent Querying that I have included in Fluent Cassandra.

21 May 2010

6 Git Commands To Get You Started

No Comments Uncategorized

I have heard a lot of chatter on blogs and twitter about how people just don’t get git.  They exclaim it is too hard to learn, too hard to work with, doesn’t make sense, and on and on…  To put this bluntly, I think they are just complaining for the sake of complaining, or at the very least they never bothered to learn how to use git.  So as a remedy to this, I am publishing the only 6 git commands that you really need to know to get yourself started for a project where you are the sole-developer.

git init

Used to initialize the current directory as your local repository for your projects source control.

git init

git remote

Sets the remote, or online, repository that you want to commit your local repository to.

git remote add origin {{git-url}}

git add

Used to add files to be committed.  To add a single file do this:

git add {{filename}}

Or to add all the files in the current directory and all subdirectories, do this:

git add .

git commit

Used to commit the current changes to your local repository. 

git commit -am "your message about what changed and why"

git status

Used to show the differences between what has been committed and the current directory.

git status

git push

Used to push your local repository, or in other words your committed changes, to your online repository such as GitHub.

git push

Does the same thing as the above.

git push origin

Does the same thing as above assuming you are in the master branch, which is default for new Git repositories.

git push origin master

Bring in all together

Now lets bring all these commands together as an example of how they might be used in a simplistic, but real world situation.

git init
touch README
{{ Add Some Test To Your README File }}
git add README
git commit -am "adding the readme file to my project."
git status
git remote add origin git@github.com:managedfusion/coderjournal.git
git push origin master

Hope this helps you get started with Git. If you are interested in some of the more advanced ways of working with Git there is an excellent tutorial put together by GitHub at http://learn.github.com/.  Also don’t forget to setup your .gitignore file.  Happy coding.

19 May 2010

.gitignore Config File For .NET Projects

7 Comments Uncategorized

I wanted to post this mostly for my future reference.  But I think it is also equally as useful to anybody else with a .NET project that is using the Git as their source control, and want to make sure non-code extras that come with .NET projects don’t get checked in.

.gitignore File

This file specifies the paths and files to ignore in your project.  Each line constitutes a new path, and each one can use basic RegEx to generalize the ignore checking.

To create the file run the following commands from your Git command prompt for windows use msysgit, or Linux and Mac OSX you can use the native command line for this.

touch .gitignore
{{ Add The Text In The Next Part }}
git add .gitignore
git commit -am "adding ignore checking paths for this project"
git push origin master

Or you can just create a file named “.gitignore” in notepad and save it and use your favorite Git client.

[Oo]bj/
[Bb]in/
*.suo
*.user
/TestResults
*.vspscc
*.vssscc

If you have any ignore statements that you find useful for your projects, I am interested in growing this file, so leave them down in the comments.