Jump to content

Distributed Workflow direct server connection configuration.


Opender

Recommended Posts

Hi guys,
 
I'm a bit of a newbie to PSCM but also Source Control in general and networking is just flying over my head.
 
- We are currently using SVN at work, with an internal server holding the central repo.
- We are looking to convert to DVCS - and I am suggesting/researching PSCM.
- Although distributed, we would still like to maintain a central repository from which devs push/pull changes to their local repositories. (A lot of work is done remotely so we would like to have the ability of local check-ins).
- We will be using SQL Server as the database backend.
 
I'm really quite lost as to where to begin with figuring out how this would be set up. Simply putting it, how can somebody overseas connect to the central repository and push/pull their changes securely? What needs to be set up/configured on each side? I'm not asking to be spoon fed, but I'm really lost. Is this something that needs to be set up in SQL Server or Plastic SCM?
 
Thanks for your help in advance.

Link to comment
Share on other sites

Hi,

 

Plastic SCM allows to work in both distributed an centralized mode. I would recommend you to read some interesting blog posts to check different workflows and setups:

 

http://codicesoftware.blogspot.com/2010/12/dvcs-for-everyone.html

http://codicesoftware.blogspot.com/2010/12/dvcs-explained-working-disconnected.html

http://codicesoftware.blogspot.com/2013/07/the-anatomy-of-distributed-development.html

 

After reviewing these posts, you will have a good overview and we can continue discussing the questions you have. Regarding the SQL Server configuration check this information:  http://www.plasticscm.com/infocenter/technical-articles/kb-how-to-configure-plastic-scm-with-sql-server.aspx

 

Regards,

Carlos

Link to comment
Share on other sites

Hi Carlos,

 

Thanks for the links. I had a good read through them all and I think the scenario that applies to us would be the "distributed with master repo" structure shown here. But even that would be a bit different - we would require internet access to the (master?) repository so that when a developer goes overseas, they can still push/pull changes. I guess the enterprise model here also applies, but we only have one developer team, but frequently technicians/individuals need to go overseas/across the country to service a product and need to be able to push/pull the latest changes.

 

The master repository is really just a backup - each dev automatically pushing to it after a commit/daily etc (using custom triggers).

 

I've got SQL Server up and running locally and it works fine. What I want to ask is what would be the next steps with regards to configurations to set up the 'distributed with master repo scenario? Its a broad question but frankly I'm not sure what to ask exactly. Please enlighten me. :)

 

Thanks a ton.

Link to comment
Share on other sites

Hi,

 

Actually, once you have SQL Server running you can just create a new repository and start working :)

 

Distributed developers can work without internet access and commit the changes locally. But when they want to push the changes to the master repository, the internet access will be necessary.  For example, you can work locally and once a day perform a  sync with the master repository to get the last changes from your coworkers and push your changes.

 

Another interesting feature in your workflow could be the SyncView:  http://codicesoftware.blogspot.com/2011/08/this-is-how-i-use-synch-view.html

 

Regards,

Carlos

Link to comment
Share on other sites

Hi Carlos,

 

I understand that. What I'm stuck at is how to set up the server and client sides so that developers can push to a remote master repository. I've played around with the SyncView also.

 

Essentially this post: http://codicesoftware.blogspot.com/2010/03/distributed-development-for-windows.html - I've got the a distributed server set up on my PC and its connected to the company network etc. How can I access that repository from my laptop while connected to a different network (eg. overseas)? What needs to be set up?

 

For Git and Mercurial, you have the network protocol setups - git://, ssh:// etc to access the repositories. I want to do the same process you would with a shared Git repo - push/pull from central repo from a different network.

 

Apologies if we're going in circles - I can try to reword again.

 

Cheers,

Opender

Link to comment
Share on other sites

Hi,

 

When configuring Plasitc, you can use SSL encryption, but it´s not necessary. You just need to configure your sync view to push/pull your changes to the remote master repository.  

 

For instance, you can commit your changes frequently to your local repo and once a day get connected using VPN to your master repo and perform a Sync.

 

In Preferences --> Profiles, you can configure your master server to perform the syncs. But remember that your client is actually configured to perform commits to your local repository. You can review it running in command line: "plastic --configure".

 

Regards,

Carlos

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...