www.webdeveloper.com
Results 1 to 6 of 6

Thread: PHP Development with Version Control such as Git?

  1. #1
    Join Date
    Jan 2005
    Posts
    361

    Question PHP Development with Version Control such as Git?

    hey all was wondering if any one is using Git for their web projects?
    Im trying to update out development model to add reliability and better deployment options. Problem im facing is that our current model is we SCP to server and work like tat almost like a FTP but better. We use WinSCP + Notepad++, save changes in the file and its on the server and you can preview it right away. Git is nice BUT it works with local directory and to preview PHP project that means i need to run same server config on local machine and that is NOT possible a many client servers have different configs so the best case scenario i will end up running 10-20 VM with copy of server configs. Thats possible but does not seam nice

    Ideallly im looking for a solution or front end app can connect to Git server just like FTP or SCP we work there we click save we see file previews right away, we can drug and drop files for uploads. So nothing lives on developers computer. And integrated editor is Notepad++ but changeable to anything developer wants. Then at the end of the day developer can commit changes and push them to development server.


    Finally when we test whats on development server we can push update to "bare" server which is production.

    Any one ca share their experiences?
    ------
    What am I doing?

  2. #2
    Join Date
    Mar 2012
    Posts
    1,509
    I have no experience of Git, and my experience of version control/repository software is a system I co-wrote. I did that because it resides on an obscure OS, for which no ready-written solutions exist. However, from what I have read of it, the Git model is superior to your proposal, because developer's work-in-progress does not belong in the central repository anyway! There should be an alpha testing/sign-off process authorizing the transfer of enhancements and bug fixes to the central repository.

    What I would investigate is the possibility of locating the work areas on the Git server (separate from the repository). That is the model we implemented and it works fine. I understand that Git has full version control on the work-areas as well (which ours does not), so that would seem like the best of both worlds.
    Last edited by jedaisoul; 08-31-2014 at 02:53 AM.

  3. #3
    Join Date
    Aug 2004
    Location
    Ankh-Morpork
    Posts
    19,330
    We use Git at work. I mostly just use Git via the command line, though there is integration for it in many editors/IDEs these days. If you go with GitHub as your repository, you can do a lot of stuff via links/controls on their web site, but I don't really use that, so can't comment on how complete/useful it is (other than to get the ssh path for cloning a repo).
    "Please give us a simple answer, so that we don't have to think, because if we think, we might find answers that don't fit the way we want the world to be."
    ~ Terry Pratchett in Nation

    eBookworm.us

  4. #4
    Join Date
    Jan 2005
    Posts
    361
    tnx a lot!
    in your setup how to you get code to Git?
    Problem i see is that files have to be local on dev machine and then you send them to git, but that means that to preview you work locally you need to have server running on each machine you develop. So im my case laptop, office, home PC would need LAMP on them. Alternatively i can do work on remote web server then download files locally and commit them, but that looks stupid and time consuming. Another alternative is to setup separate remote server for each git user and allow them to commit form those servers to central location, that looks stupid as we would have multiple copes of same thing

    So im some what confused. It seams mobility + easy to use development is not compatible with version control?
    ------
    What am I doing?

  5. #5
    Join Date
    Aug 2004
    Location
    Ankh-Morpork
    Posts
    19,330
    Yes, it's pretty typical to set up a test environment on your personal machine -- in my case for work it's a notebook PC I can bring home with me. If you need to work on more than one machine, it's mostly just a matter of keeping them in sync once you've cloned a given repo on each. About to go home from work?...
    Code:
    git commit -am "all my changes for blah blah blah..."
    git push origin branch_name
    Fire up your home PC in your local environment there...
    Code:
    git fetch
    git pull origin branch_name
    You now have all your latest code for that branch. (Just be sure to commit and push any changes when you're done so they're available to be pulled down when you get back to work tomorrow.)

    Alternatively, you could set up VMs on servers on your work network, providing a sandbox for each developer, and just connect to them via a VPN when working from home. Personally, I just like carrying my development environment with me in my backpack.
    "Please give us a simple answer, so that we don't have to think, because if we think, we might find answers that don't fit the way we want the world to be."
    ~ Terry Pratchett in Nation

    eBookworm.us

  6. #6
    Join Date
    Jan 2005
    Posts
    361
    ehh i guess will have to redo whole development procedures to allow local development
    ------
    What am I doing?

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

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



Recent Articles