Who is using source control?

  • In the database world, it seems that I can find very few people using source control with their database objects and so forth. I've asked a few senior level DBA's in the past why they don't and if they see the need to. Very few have found a need to do so being everything is stored on the server end outside of say a few exceptions.

    Does anyone have any good arguments why you should, especially with GIT or Team Foundation?

  • I am not a DBA, however I sort of perform some DBA-like functions and where I do, I use Subversion to store database objects, for three main reasons (any VCS would do).

    1. I don't have to keep database backups for all time just to be able to recreate how things looked in the past. So, if someone says to me "this was working last July", I can review the SVN logs to see what has changed since then and, if required build a test system from that codebase.

    2. I find the ability to quickly compare versions of code modules using a tool like WinMerge directly from SSMS via a few clicks invaluable.

    3. I pick up changes that were made to the database while I was away, without having to go look for them.

    As you maybe can tell from that, I don't use source control for databases the same way I would for an application's code - because deployment is different with a database, but I use SVN as a snapshot and review tool.

    MM



    select geometry::STGeomFromWKB(0x0106000000020000000103000000010000000B0000001000000000000840000000000000003DD8CCCCCCCCCC0840000000000000003DD8CCCCCCCCCC08408014AE47E17AFC3F040000000000104000CDCCCCCCCCEC3F9C999999999913408014AE47E17AFC3F9C99999999991340000000000000003D0000000000001440000000000000003D000000000000144000000000000000400400000000001040000000000000F03F100000000000084000000000000000401000000000000840000000000000003D0103000000010000000B000000000000000000143D000000000000003D009E99999999B93F000000000000003D009E99999999B93F8014AE47E17AFC3F400000000000F03F00CDCCCCCCCCEC3FA06666666666FE3F8014AE47E17AFC3FA06666666666FE3F000000000000003D1800000000000040000000000000003D18000000000000400000000000000040400000000000F03F000000000000F03F000000000000143D0000000000000040000000000000143D000000000000003D, 0);

  • Forum Etiquette: How to post Reporting Services problems
  • [/url]
  • Forum Etiquette: How to post data/code on a forum to get the best help - by Jeff Moden
  • [/url]
  • How to Post Performance Problems - by Gail Shaw
  • [/url]

  • We don't use source control for the classic reasons that someone might use source control. We use them to keep code related to a single change together and to help the Developer to keep from losing their work and so they can "go back" to what worked if they make that "final" change that doesn't actually work. Once that task is complete, the source control folder for that task is left for auditing purposes only. If something does go haywire further on down the line, we refer to the "Revision History" in the required header of the code to get the ticket number so that we can find the old source control folder(s) that we may need to do a comparison with. We've only had to do that once in the 3-1/2 years I've been with this company and it was no sweat.

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

  • Depending on the business you are in, compliance can be a driver for using source control. In financial services you must be able to show a solid change management environment where all changes are controled and approved. Developers dont have access to production and so create and test scripts in non-prod and then drop them into source control libraries. The scripts are then deployed manually by operators with access to production or automatically via deployment tools. Often database changes need to be arranged into released along with other code and using a version control library one way to achieve that.

  • I use SVN Tortoise for a source control.

  • Viewing 5 posts - 1 through 4 (of 4 total)

    You must be logged in to reply to this topic. Login to reply