Who we are

We are the developers of Plastic SCM, a full version control stack (not a Git variant). We work on the strongest branching and merging you can find, and a core that doesn't cringe with huge binaries and repos. We also develop the GUIs, mergetools and everything needed to give you the full version control stack.

If you want to give it a try, download it from here.

We also code SemanticMerge, and the gmaster Git client.

This is how I use the synch view

Monday, August 15, 2011 Pablo Santos 2 Comments

Hi there,
How is it going with the 4.0 beta?
I’m going to start posting about what’s new in 4.0 and how you can use it to make things easier.
Today I’m going to talk about the “sync view”.

What’s the sync view all about?


The sync view is a very simple yet powerful functionality in 4.0 that enables you to connect two different repositories (which can “live” in different servers, separated by oceans, running on different OS, using different database backends… well, the usual) and check what’s need to be updated on each of them.

How does the sync view work?


Very simple: you define a “source repository” which is the one you “connect to” to drive the process. For instance, if you’re working in a distributed way, your “source server” will be your laptop and your “source repo” the repository you want to work with.
Then you define a “destination” repo as the place to synchronize with. Following with my disconnected scenario, your laptop will host your source repo and your company’s plastic server will host the “destination repo”.
Is it clear? Once you’ve selected the two, the sync view will connect to them and figure out what changes need to be pulled (from dst to src) or pushed (from src to dst).
Note: you know, if you just define the src repo and dst repo differently, the operation will have a different meaning.

Many scenarios supported


Well, as you read above the sync view is so simple and flexible that it is possible to support many different scenarios. We like to define them as follows:
  • Distributed developer: he will have his laptop or desktop as “source” and will typically have one “destination” server, the “master copy” (your office central server if you prefer). Optionally he could have more “destinations” to collaborate with other peers instead of restricting his pushing and pulling to a single server.
  • Multi-site environment: a company with two or more facilities, each of them running a plastic server. One of them will be the source and other the destination and sync will happen among them.
  • Distributed integrator: a network of distributed plastic servers (each of them running on each developer’s computer) and the sync view defined on the integrator’s machine as a way to be able to “pull” from all the contributors on a controlled way.

    As you can see, the “sync view” is a rather simple tool although it can enable really powerful business scenarios.

    Having a mirror server



    This is my case: I have a “master server” at the office, currently running on a W2k8 machine named “Diana” and with a SQL Server backend.
    I have other servers on my network and that’s why I have 3 different “sync configurations” as you can see below.




    I have one to synch my laptop with “Diana”, a second one to synch “Diana” with an Oracle powered Plastic server, and the third one, the one I’ll be focusing on today, which syncs “Diana” with “Eunomia”, a Firebird embedded Plastic SCM server running on a tiny VM.
    Once I click on “Diana-Eunomia” sync config I can see the following details:



    It tells me there are “outgoing” csets from “Diana” to “Eunomia”, which basically means “Eunomia” will need some sync.
    If I click to get the detailsl I see:



    Which details the branches that will be synched during the process. Actually these branches are going to be “pushed” from “Diana” to “Eunomia”.
    Finally I can click on a given branch and view which changesets need to be pushed:



    The good thing (excellent IMO) is that now you can click on a cset and check the differences… even when it is remote (you’re not directly connected to that server at all!). It enables “replication preview” which we all missed with 3.0… didn’t we?

    Wrapping up


    There’s a real bunch of things on 4.0 but the sync view is really one of the important features, extremely simple, but really helpful and powerful. Enjoy.
    Pablo Santos
    I'm the CTO and Founder at Códice.
    I've been leading Plastic SCM since 2005. My passion is helping teams work better through version control.
    I had the opportunity to see teams from many different industries at work while I helped them improving their version control practices.
    I really enjoy teaching (I've been a University professor for 6+ years) and sharing my experience in talks and articles.
    And I love simple code. You can reach me at @psluaces.
  • 2 comentarios:

    Who we are

    We are the developers of Plastic SCM, a full version control stack (not a Git variant). We work on the strongest branching and merging you can find, and a core that doesn't cringe with huge binaries and repos. We also develop the GUIs, mergetools and everything needed to give you the full version control stack.

    If you want to give it a try, download it from here.

    We also code SemanticMerge, and the gmaster Git client.

    Plastic SCM 4.0 Beta 1 is now out!!!

    Tuesday, August 09, 2011 Pablo Santos 1 Comments

    Hi Plastikers! The time has come and we’re very proud to announce that our first beta of Plastic SCM 4.0 is out!

    If you were already a subscriber you should be already enjoying the new version since we sent you a notification email a couple of days ago.

    And the rest of you... well, please check what’s new here: we made for you by listening many developers like you and to read the evaluation guide we just developed to help you going through our first beta: http://www.plasticscm.com/releases/4.0-beta/PlasticSCM-4.0-evaluationguide.pdf

    A lot more for you...
    Clearly the big question mark is: what’s in there for me?: a lot, is the answer, but I’ll try to be specific and summarize:

    For current Plastic SCM 3.0 users

    We’ve been listening to your requests, your suggestions and wishes … and that’s a big part of what 4.0 is all about: a product that fit your needs!


    Everything Much Faster

    4.0 is much faster, switch to a new branch, label, merging… blazing fast as you wanted


    Improved Branch Explorer

    All the things you wanted to have including filtering, better improved searching, rearranging the diagram and some extras like subdiagrams


    Better Replication Support

    Much better replication support, including the sync view


    Simplified Merge Operations

    Core changes to simplify merge operations, branch creation and so on. Now changesets are kings and merge tracking and history is based on them


    Transparent Change Tracking

    Just change code and Plastic will take care of everything, even tracking what you’ve moved


    For developers who never used Plastic before

    You’re interested in the new paradigm: Distributed Version Control (DVCS), aren’t you? But probably you don’t feel like dealing with Git, Mercurial and other tools specifically designed for open source projects. You you need a system designed for enterprises or public institutions with the similar requirements . If that’s true, Plastic is for you.

    Reduced learning curve

    Reduce the learning curve because everything is visual and easy to use, which doesn’t mean it is not as powerful as it needs to be

    One-click replication

    Push, pull branches (full replication) with just a few clicks. Jump into the distributed age but with the simplicity and effectiveness you’re used to

    Do use feature branching!

    Step into the branching era creating feature branches in seconds, switching to them… merging back. You know, boosting your performance using the right tools, no magic, no “marketing buzz”, just the tools you need to help you work on your daily programming tasks

    For managers

    As a manager there are a few concerns you can’t remove from your mind: improving time to market, reducing development costs and increasing quality.

    Well, Plastic SCM is not a silver bullet, so only your hard work and coordination with your team will make things happen, but you know having the right tools help. If all you have is a hammer, everything looks like a nail, doesn't it? Fortunately Plastic is not only a hammer.

    How can Plastic help you?

    Improve visibility

    Visibility is one of my main concerns and one of the key points to improve since I first found it on Steve McConnel’s writings a decade or more ago.

    Make sure you work in short iterations, you deliver fast and you work on a feature oriented way, getting deliverable pieces of integrations done. The usual “agile” way of thinking, isn’t it?

    Ok, Plastic will help you implementing “branch per task”, the right tool to get “full parallel development” up and running. There are other patterns too, of course, and fortunately Plastic, all about branches, is the only one able to support them all


    Enable collaboration between distant teams or “roaming developers”

    Nowadays having team members sitting on different locations (whether it is at a different office or at home) is pretty common.

    Plastic SCM is distributed, fully distributed, and it means it is the right tool for the job.

    There are other tools out there, but Plastic is the only one designed for commercial use, for professional teams working on commercial projects


    Learn more about what we have been working on

    During the last months we’ve been writing a bunch of material to explain what we were doing with 4.0, I went through it and created a list below to help you go through the entire collection:

  • Several Facebook entries, sharing news about the development of 4.0 (screenshots and so on)
  • The making of Plastic SCM 4.0 at Flickr
  • Several entries at our twitter, including specific screenshots at TweetPic
  • Blog post entry "Distributed synchronization view... unveiled!"
  • Blog post entry "Pulling remote changes with DBrEx".
  • Blog post entry "unscientific 4.0 benchmark test"
  • Blog post entry "DAG rendering, take two"
  • Blog post entry "DAG rendering"
  • Video "Synch view explained"
  • Video "Synchronization view explained in detail"
  • Video "Xdiff again"
  • Video "Plastic SCM 4.0 feature branches"
  • Video "Plastic SCM 4.0 beta 1 installation"
  • Video "4.0 find renamed files"
  • Video "4.0 small changes"
  • Video "Plastic SCM 4.0 Distributed Branch Explorer preview"
  • Video "Transparent SCM preview"
  • Video "Distributed Branch Explorer preview"
  • Pablo Santos
    I'm the CTO and Founder at Códice.
    I've been leading Plastic SCM since 2005. My passion is helping teams work better through version control.
    I had the opportunity to see teams from many different industries at work while I helped them improving their version control practices.
    I really enjoy teaching (I've been a University professor for 6+ years) and sharing my experience in talks and articles.
    And I love simple code. You can reach me at @psluaces.

    1 comentarios: