Skip to content

Suggested development workflow

Kiriti Gowda edited this page Jan 7, 2019 · 4 revisions

1. Fork your own copy of MIVisionX to your account

Public can access your repository from http://github.com/USER/MIVisionX where USER is your GitHub username.

See GitHub help for more details.

2. Setup your development environment

2.1 Install dependencies

  • CMake 2.8 or newer
  • OpenCL SDK
  • OpenCV 3 SDK (optional)
  • ROCm dependencies: rocm-cmake, MIOpenGEMM, MIOpen (optional)

2.2 Setup local copy of your personal repository

% cd ~/work
% git clone --recursive http://github.com/USER/MIVisionX
% cd MIVisionX
% git branch -m master-personal
% git remote add amd http://github.com/GPUOpen-ProfessionalCompute-Libraries/MIVisionX
% git fetch --all
% git checkout -b master --track amd/master
% git checkout -b develop --track amd/develop
% git pull
% git submodule init
% git submodule update

2.3 Make sure you can build

% cd ~/work
% mkdir build
% cd build
% cmake -DCMAKE_BUILD_TYPE=Release ../MIVisionX
% make
% ls -l bin
... all the binaries will be in ~/work/build/bin folder ...

3. Start the development work

3.1 Sync personal repository and create a new branch before making any local changes

% cd ~/work/MIVisionX
% git checkout develop
% git pull
% git submodule update
% git checkout -b your-name-initials/new-branch-name

Pick a meaningful name for the new branch, for example, user/test_examples

3.2 Make source code changes, build, and unit test

% cd ~/work/MIVisionX
% ... edit source files ...

Now, just build and unit test

% cd ~/work/build
% make
% ... unit test using binaries in ~/work/build/bin folder ...

3.3 Review your source code changes before commit

% cd ~/work/MIVisionX
% git status
... review changes and make sure that only files that you intended to change are listed ...
% git diff
... review every change to source code files ...
% git add list-of-file(s)
% git status
... review changes again and make sure that only files that you intended to change are listed ...
% git commit -m "describe your changes"
% git push
... this will push local commits into your personal repository on github ...
  • select base fork as GPUOpen-ProfessionalCompute-Libraries/MIVisionX
  • select base branch as develop
  • select head fork as USER/MIVisionX
  • select compare branch as your-name-initials/new-branch-name
  • type in the title and comment
  • scroll down and review all code change once more
  • scroll up and click Create pull request button to submit the pull request

See GitHub help for more details.

Clone this wiki locally