Announcement (2017-05-07): www.ruby-forum.com is now read-only since I
unfortunately do not have the time to support and maintain the forum any
more. Please see rubyonrails.org/community and ruby-lang.org/en/community
for other Rails- und Ruby-related community platforms.

Hi all.
I want to apologize, I guess this is not the best place to post this
but I'm interested to know what RoR developers think.
What would be a good open source versionning system for somebody that
has never used one?
Thanks a lot.
Pepe

Mukund wrote:
> Git requires getting used to, but it is good after you learn the> ropes.>> On Jan 8, 12:58ï¿½pm, Bosko I. <removed_email_address@domain.invalid>
I say go with Git! I resisted Git at first, but once I got used to it I
really like it a lot. My primary reason for using it can be summed up in
one word "Github."

pepe wrote:
> Hi all.>> I want to apologize, I guess this is not the best place to post this> but I'm interested to know what RoR developers think.>> What would be a good open source versionning system for somebody that> has never used one?>> Thanks a lot.>> Pepe
We use Mercurial because back in time the support of Git on Windows was
bad. On Mac and GNU/Linux, Mercurial and Git are both excellent choices,
so you won't be wrong. Don't use SVN, it's out of the game for new
commers.
--
Video training with screencasts at http://www.digiprof.fr

Thank you to all of you.
I have been reading up about different tools and I was leaning towards
Git, among other things because of Github, as Robert mentioned. I
don't know much about the tool yet and I know there are 2 sides to it,
the shell screen and the GUI version. Is the same functionality
available in both areas, which one should I go with?
Thanks a lot again.
Pepe
On Jan 8, 10:42 am, Fernando P. <removed_email_address@domain.invalid>

I haven't used the GUI that much, but I might take a look in the
future.
Personally, I happen to like CLI tools overall for many things. Even
though Textmate is still one of my favorite editors, there is
something nice about opening up VIM and using that for quick edit
jobs.
My opinion: try both! ;)

pepe wrote:
> Thank you to all of you.>> I have been reading up about different tools and I was leaning towards> Git, among other things because of Github, as Robert mentioned. I> don't know much about the tool yet and I know there are 2 sides to it,> the shell screen and the GUI version. Is the same functionality> available in both areas, which one should I go with?>
Git syntax for everyday tasks is so simple it really does not warrant a
GUI. Looking at past branches and merges, well there a gui like gitk
has real value.
Create a new repository:
$ git init
Add files to stage:
$ git add <directory or filename>
Commit staged files to repository:
$ git commit -m"commit message"
Copy a repository:
$ git clone [<protocol>://]<path/to/source/repository> </path/to/clone>
Update and merge from a remote repository:
$ git pull <protocol>://</path/to/source/on/remote>
Update local commits to remote:
$ git push
Check local against remote:
$ git fetch
Look at local changes against remote
$ git diff
Unwind a local commit and preserve subsequent work:
$ git reset --merge
Abandon all local changes and reset to remote:
$ git fetch; git status; git pull
#all steps required in that order to place index in known state
Ignore files and directories:
$ vi .gitignore
The rest of it, and there is a great deal of material in the rest of it,
is rarely used. The supported protocols are git://, ssh:// and
http(s)://.

I rarely use GUI tools that come with git. Although gitk is really
excellent if you want to examine history, especially since feature to
use external diff viewer is added. MinGW version of Git works good on
Windows but if you need to use git-svn you'll have to work with Cygwin
because MinGW version still doesn't work well.
Nevertheless what really amazed me in Git are easy branching and
merging, git stash (put away your current, not commited work, make
changes and applying ongoing work back) and git bisect that is really
helpful in chasing bugs that occur at some point in time.