bitacovir wrote: ↑Thu Feb 13, 2020 7:51 pm
No idea how to do that. I just wait for the next development version release.
First set up your own fork, and your own remote (origin and upstream) repositories, as indicated in
Source code management.
Then you can test somebody else's branch. We assume we are in the "source" directory where we initially downloaded (cloned) our repository.
0. Optionally, we can use the "gitk" program to visualize the branches and commits. This gives a better idea of all commits made in the checked branches. We use the ampersand symbol to run "gitk" in the background so we don't block the terminal and can run other commands.
In "gitk" press Shift+F5 to reload the database of branches.
1. Add realthunder's repository as a remote
Code: Select all
git remote add realthunder https://github.com/realthunder/FreeCAD
2. Fetch the information in his repository to know the available branches.
3. Now, make sure you are in the master branch, and then create and checkout the specific branch that is indicated in the pull request in your local system. Example, pull request
#3045.
Code: Select all
git checkout master
git checkout -b DressUpTransform realthunder/DressUpTransform
4. Optional: that branch may not be based on the latest code in the upstream repository, so we could rebase it ourself to make sure it is using the latest code.
If there are any conflicts, they will appear at this step; these conflicts in the code in realthunder's branch will have to be solved before continuing (this requires a bit of experience and actually understanding the code).
5. If there are no conflicts and everything seems to be okay, we can proceed with
compiling.
6. In Linux, we move to the build directory and compile the source.
Code: Select all
cd ../freecad-build
cmake -DBUILD_QT5=ON -DPYTHON_EXECUTABLE=/usr/bin/python3 ../freecad-source
make -j3
7. If the branch introduced only Python code, the compilation will be very fast, and it should finish after three minutes or less. If the branch modified C++ code, it may take a long time depending on the type of code that was introduced. If core files were created or modified, it may take up to two hours to recompile and link everything.
8. After the compilation is done, the new generated executables are inside the bin/ directory. Launch the program and test that everything works fine; also perform the unit tests.
9. Report your findings. "This branch is great and fixes the problem." "This branch fixes this but breaks that which was working before."