Skip to content

GIT Workflow using Command Line

  • Create a directory structure in your local disk to clone the components. (ie. 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)

e.g:

git clone https://cust-ale-tst@dev.azure.com/cust-ale-tst/testrun02/_git/customer-solution C:/dev-home/ifs-cust-testcustid02-dev/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 rebase from the local 'master' branch to get everything from master into your local branch. This step can be done provided that the local master branch is up to date with the changes of the remote master.
git rebase master
  • If multiple commits are present in the local branch, do an interactive rebase to squash multiple commits into a single one.
git rebase -i master

Note: Before rebasing the topic branch using the local master branch, make sure that the local master branch has been updated with the latest changes in the remote master branch. This can be done by;

  • Checkout master branch
git checkout master
  • Pull changes from remote master branch 
git pull
  • Checkout topic branch and perform the rebase
git checkout topic/partneruser1/M-issueid-modification-1 git rebase master
  • After a squash, if remote branch exists, do
git push --force
  • Push your changes into remote branch. In this case remote branch does not exist and we are creating the remote branch at the same time of pushing changes.
git push --set-upstream origin topic/partneruser1/M-issueid-modification-1

  • 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