Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6621425
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 25, 20262026-05-25T21:15:45+00:00 2026-05-25T21:15:45+00:00

I apologize if this is obvious or easy, I have looked at a good

  • 0

I apologize if this is obvious or easy, I have looked at a good number of git/github tutorials and read other articles, but I want to make sure what I’m doing is right.

I want to incorporate VC (for obvious reasons) into my development team and process.

Current development process (using Dreamweaver):
* Receive a ticket (or work order)
* Download file on Development server
* Make changes to the file
* Upload file back to development server
* Changes tested/verified
* Send to production server


I’m trying to figure out how to make our new development process with using Git.

I am switching over to PHPStorm (which is an actual PHP IDE with direct integration with Git).

Would it be something like

  • Receive a ticket (or work order)
  • Checkout/Update/Download file(s)
  • Change Files
  • Upload file (which I assume is also the current working directory…?)
  • At the end of the day, do a commit
  • Have build script send data to testing server (nightly build)

Or would it be better to do something like

  • Receive a ticket (or work order)
  • Checkout/Update/Download file(s)
  • Change Files
  • Upload file/commit
  • Have build script send data to testing server (nightly build)

Or is there another way? Having a bit of trouble understanding what would be the optimal flow?

Any help would be greatly appreciated.


Edit

I’m trying see if it is best to have a version of the server locally (every developer), and if so, how does that work if you have 7 or so branches?

If not, how do you deal with 7 or so branches with them on the web? Do you FTP files up or use Git Hooks to make them auto update?

Update 07/26/2012

After working successfully with Git for quite a while now I’ve been following this branching model with great success:
A Successful Git Branching Model

The answer to the above was yes — should definitely have a local version of the server.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-25T21:15:46+00:00Added an answer on May 25, 2026 at 9:15 pm

    Assuming you have a live server and a development server I would do something along these lines.

    Before even starting with a development cycle I would at least have two branches:

    1. Master – the development server runs on this branch
    2. Stable – the live server runs on this branch.

    So if a developer gets a ticket or a work order he/she will perform the following actions:

    1. git pull origin master
    2. git branch featureBranch (named as the ticket id or as a good description for the work order)
    3. git checkout featureBranch
    4. Make changes which will accomplish the desired change. Commit as often as is necessary. Do this because you will create valuable history. For instance you can try an approach to a problem and if it doesn’t work, abandon it. If a day later you see the light and want to re-apply the solution, it is in your history!
    5. When the feature is fully developed and tested locally, checkout master.
    6. git merge featureBranch
    7. git push origin master
    8. Test the pushed changes on your development server. This is the moment to run every test you can think of.
    9. If all is working out, merge the feature or fix into the stable branch. Now the change is live for your customers.

    Getting the code on the server

    The updating of servers shouldn’t be a problem. Basically I would set them up as users just like you’re developers are. At my company we’ve setup the servers as read-only users. Basically that means the servers can never push anything but can always pull. Setting this up isn’t trivial though, so you could just as well build a simple webinterface which simply only allows a git pull. If you can keep your developers from doing stuff on live implementations you’re safe 🙂

    [EDIT]

    In response to the last questions asked in the comments of this reaction:

    I don’t know if I understand your question correctly, but basically (simplified a bit) this is how I would do this, were I in you shoes.
    Example setup

    The testing machine (or the webroot which acts as testing implementation) has it source code based in a git repository with the master branch checked out. While creating this repository you could even remove all other references to all other branches so you’ll be sure no can checkout a wrong branch in this repository. So basically the testing machine has a Git repository with only a master branch which is checked out.

    For the live servers I would do exactly the same, but this time with the stable branch checked out. Developer should have a local repository cloned in which all branches exist. And a local implementation of the software you guys build. This software gets its source from a the local git repository. In other words: from the currently checked out branch in this repository.

    Actual coding

    When a new feature is wanted, a local feature branch can be made based on the current master. When the branch is checked out the changes can be made and checked locally by the developer (since the software is now running on the source of the feature branch).

    If everything seems to be in order, the changes get merged from feature branch to master and pushed to your “git machine”. “your github” so to speak. Testing can now pull the changes in so every test necessary can be done by QA. If they decide everything is ok, the developer can merge the changes from master to stable and push again.

    All thats left now is pulling form your live machines.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I apologize if this has a painfully obvious answer but I am both a
I apologize if this is an obvious question, but I'm going through the Java
I apologize if the answer to this seems obvious but I just cannot figure
I apologize before hand if this is an obvious question: can Apache 2.0 +
I apologize up-front if this is a really obvious question since I'm pretty sure
This question might be very easy to answer so I apologize if I missed
I know what I want to do is probably easy and obvious but I
I may just be missing something obvious here, so I apologize if this is
I'm pretty new to rails, so I apologize if this question has an obvious
I'll apologize in advance in case this is obvious; I've been unable to find

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.