Question about Source Control

F

Frank Millman

Hi all

I know I *should* be using a Source Control Management system, but at
present I am not. I tried to set up Mercurial a couple of years ago, but I
think I set it up wrongly, as I got myself confused and found it more of a
hindrance than a help. Now I am ready to try again, but I want to avoid my
earlier mistakes.

I understand the concept, and I understand the importance, so I do not need
reminding of those. What I would like help with is the basic setup. I could
subscribe to the Mercurial mailing list and ask there, but I am hoping for a
kick-start here. Here is my setup.

All my source code resides on an old Linux server, which I switch on in the
morning and switch off at night, but otherwise hardly ever look at. It uses
'samba' to allow sharing with Windows, and 'nfs' to allow sharing with other
Linux machines.

I need to test my program on Windows and on Linux, so I run it from both at
various times. On Windows I have a 'mapped drive' pointing to the source
code. On Linux I use a third machine, running a recent Fedora, using nfs to
mount a directory pointing to the source code. Obviously each machine has
its own version of Python installed.

I do my development on the Windows machine. I use TextPad, a simple text
editor, which works fine for my purposes. It uses the mapped drive to point
to the source code.

So where should I install the SCM, and how should I set it up so that I can
access the latest version from any machine?

Any hints will be appreciated.

Frank Millman
 
M

Mark H Harris

All my source code resides on an old Linux server, which I switch on in the
morning and switch off at night, but otherwise hardly ever look at. It uses
'samba' to allow sharing with Windows, and 'nfs' to allow sharing with other
Linux machines.

hi Frank, I am using GIT and code.google.com.

https://code.google.com/p/pythondecimallibrary/

I have not used Code Google prior to the pdeclib project; however, I
plan to use it in the future extensively, at least for my open source
projects (and when I am thinking about bringing another person on board.

Code Google permits three version|control|access systems (I use GIT,
a very simple command line interface). The thing is that the code
resides on a person's machine as a clone of the repository, and is
assessable from anywhere in the world, allows multiple developer
participation, allows multiple branches|merge|master, and allows access
to the source on-line (browse|edit), and permits new members to clone
the repository from anywhere. Downloads are zipped.

The down-side is also the up-side. Code Google is an open source
developer collaborative environment for sharing & managing. Anything you
put there belongs to everyone in the project, and can be viewed by
anyone in the world (which is kinda the point of open source). There is
a supreme benefit to having multiple eyes on the code. People maybe not
even involved in the project directly will comment on the code (and they
are not shy). You code will improve dynamically and radically (if you
have the guts for it).

It took me a couple of hours to get up to speed with Code Google. It
took another hour or so to come up to speed with GIT. You need to create
the project on Code Google first. Then on your machine, in the code
directory (the directory actually holding the source files that you are
going to make a part of your project) you do these things:

git init
this builds the .git subdirectory needed for push

git add file-name

add each filename you want to commit and push

git remove

removes any unwanted files

git commit -a

edit your commit comments here , or provide default


git push https://code.google.com/p/whateveryourprojectnameis/ master

sends the files on their way


other files: .gitconfig .netrc


You will place your name, email, and method (use simple) in the
..gitconfig file. The .netrc file will contain the login info for code
google machine.


Read the GIT manual on-line; its pretty easy too.

https://www.kernel.org/pub/software/scm/git/docs/user-manual.html

http://git-scm.com/documentation


Cheers
 
R

Rustom Mody

I know I *should* be using a Source Control Management system, but at
present I am not. I tried to set up Mercurial a couple of years ago, but I
think I set it up wrongly, as I got myself confused and found it more of a
hindrance than a help. Now I am ready to try again, but I want to avoid my
earlier mistakes.
I understand the concept, and I understand the importance, so I do not need
reminding of those. What I would like help with is the basic setup. I could
subscribe to the Mercurial mailing list and ask there, but I am hoping for a
kick-start here. Here is my setup.
All my source code resides on an old Linux server, which I switch on in the
morning and switch off at night, but otherwise hardly ever look at. It uses
'samba' to allow sharing with Windows, and 'nfs' to allow sharing with other
Linux machines.
I need to test my program on Windows and on Linux, so I run it from both at
various times. On Windows I have a 'mapped drive' pointing to the source
code. On Linux I use a third machine, running a recent Fedora, using nfs to
mount a directory pointing to the source code. Obviously each machine has
its own version of Python installed.
I do my development on the Windows machine. I use TextPad, a simple text
editor, which works fine for my purposes. It uses the mapped drive to point
to the source code.
So where should I install the SCM, and how should I set it up so that I can
access the latest version from any machine?
Any hints will be appreciated.

Seen this??
Yeah may not apply directly to your use-case buts seems worth a read
https://www.kernel.org/pub/software/scm/git/docs/gitworkflows.html

[At command line
$ git help -w workflows
will give you the same
]
 
F

Frank Millman

Rustom Mody said:
I know I *should* be using a Source Control Management system, but at
present I am not. I tried to set up Mercurial a couple of years ago, but
I
think I set it up wrongly, as I got myself confused and found it more of
a
hindrance than a help. Now I am ready to try again, but I want to avoid
my
earlier mistakes.


Seen this??
Yeah may not apply directly to your use-case buts seems worth a read
https://www.kernel.org/pub/software/scm/git/docs/gitworkflows.html

[At command line
$ git help -w workflows
will give you the same
]

Thanks, Rustom, that was a very interesting read.

I have made a shortcut to it so that I can refer back to it as my
understanding grows.

Frank
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,744
Messages
2,569,482
Members
44,901
Latest member
Noble71S45

Latest Threads

Top