SitePoint Sponsor

User Tag List

Results 1 to 5 of 5
  1. #1
    SitePoint Evangelist
    Join Date
    Aug 2005
    Location
    Winnipeg
    Posts
    498
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Code Approval via SVN or GIT

    I'm curious as to the process you may (or have thought of employing) implement to ensure all code that finally makes it into the trunk meets a projects minimum standards/quality assurance???

    In the past I have created branches for individual members and if memory serves me correctly I created a diff patch from each which I then merged with trunk - or changed - denied changes.

    The process worked but was sometimes problematic.

    What are your solutions? If your software team is flat and everyone has write permission to your trunk thats great, but won't work for me.

    Cheers,
    Alex
    The only constant in software is change itself

  2. #2
    . shoooo... silver trophy logic_earth's Avatar
    Join Date
    Oct 2005
    Location
    CA
    Posts
    9,013
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)
    Test Driven Development. Require test cases to reach 100% before a given piece of code is merged with the trunk.
    Logic without the fatal effects.
    All code snippets are licensed under WTFPL.


  3. #3
    SitePoint Evangelist
    Join Date
    Aug 2005
    Location
    Winnipeg
    Posts
    498
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    That will not completely address my problem unfortunately, although it does help and I have in the past attempted to set up a pre-commit hook which checks for this.

    Unfortunately, I have yet to find a way to ensure that new developers do not stick business logic in the view or controller, when it should be in the model. Unless I am the only one implementing unit tests - which I have considered - this is not applicable.

    Coding conventions (despite Pear CodeSniffer) also are of great importance to me. I like to manually verify all changes before committing to trunk. At least with new team members.

    I suppose one day I will have all conventions implemented as Code Sniff's but until I find time manual approval is the only way I see as practical, for now.

    Cheers,
    Alex
    The only constant in software is change itself

  4. #4
    . shoooo... silver trophy logic_earth's Avatar
    Join Date
    Oct 2005
    Location
    CA
    Posts
    9,013
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)
    Well there you go, you basically answered your own question..manual approval. Since your requirements do not translate well to automated testing then you are left with manual quality control.
    Logic without the fatal effects.
    All code snippets are licensed under WTFPL.


  5. #5
    SitePoint Evangelist
    Join Date
    Aug 2005
    Location
    Winnipeg
    Posts
    498
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Manual is what I thought was implied right from the word go but perhaps I miscommunicated.

    My approach right now is to have team members commit to a branch, and commit, which I then use to generate a diff patch and apply incrementally or deny completely.

    That being said, I believe another approach I have tried is having team members generate the patch from their end and send me the patch only, thus avoiding the complexity and messiness of arbitrary branches.

    Are there any other tools, techniques, etc which I am unaware of or have over looked, is what I was looking to ask.

    Perhaps a web based SVN management tool or similar SCM tool (SVN is what I use but would be open to Git if it facilitated approval more easily than my current approach).

    Cheers,
    Alex
    The only constant in software is change itself


Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •