GIT Workflow using Command Line¶
- Working with GIT
Go to your build place in the 'IFS Lifecycle Experience Portal' and copy the url of the 'customer solution' repository using the shortcut.
- Create a directory structure in your local disk to clone the components. (i.e. C:\dev_home\ifs-cust-x-dev\workspace).
- Note: In order for you to work with IFS Developer studio you need to have the folder "workspace" as the last folder in your folder structure. The application components that you clone from the repository must directly reside in the...\workspace folder
- Clone the repository into workspace using following command (i.e. git clone <customer solution repo url> <local directory path>\workspace)
Notice that 'master' branch of the 'customer solution' repository is cloned into the local disk.
- Create a topic branch to work with your customization development and checkout the newly created topic branch. (For more information on naming branches please refer the Naming Standards guidelines)
git branch topic/partneruser1/M-issueid-modification-1 git checkout topic/partneruser1/M-issueid-modification-1
- Start developing customizations on your topic branch.
- Compile and test changes locally.
Commit your changes.
Stage everything using
git add *
- Commit changes using
git commit -m "M-issueid-your-commit-message-here"
- Do a pull from the remote 'master' branch to get everything from remote master into your local topic branch. Make sure you're in the topic branch before running the below command.
git pull origin master
- Resolve if there are merge conflicts. Check the status of local changes
- If there are unstagged files follow the below steps, else skip it.
git add .
git commit -m "suitable commit message"
- If all the changes are commited, push all the changes to the remote topic branch.
eg: git push origin topic/user1/topic/partneruser1/M-123-modification-1
git push origin <topic_branch_name>
- After this step, a Pull Request to the master branch (PR) can be opened in the Customer Solution Repository from the topic branch. This should be done in your Customer Solution Repository. Please refer working with pull requests for more information