[pgrouting-dev] GSoC Students

Razequl,

Great to have you back again. This is the community bonding time so it would be good to start outlining your thoughts on your project, geting the development sort out again which you are working.

Daniel already mentioned the you need to work with branch "develop" and not "sew-devel-2_0", I think you already have a github account, you should fork pgrouting from the github page.

Then do:

# create a local branch to do your work in
git checkout -b vrp-project develop
mkdir -p src/vrp/src src/vrp/sql src/vrp/doc src/vrp/test
touch src/vrp/src/CMakeLists.txt src/vrp/sql/CMakeLists.txt src/vrp/doc/CMakeLists.txt src/vrp/test/CMakeLists.txt
git add src/vrp/src/CMakeLists.txt src/vrp/sql/CMakeLists.txt src/vrp/doc/CMakeLists.txt src/vrp/test/CMakeLists.txt
git commit -m "Create initial directory structure for VRP project."

# push you local branch back to your fork
git push -u origin vrp-project

This will create the initial structure for you project in our source tree, look at the CMakeLists.txt files in the ksp or bi-directional tree structure and clone this for your project. I would create a simple "Hello world" app in your vrp tree to work out the issue. Ask if something is not clear.

Now you can create files, add them to your project, commit them locally, push them back to your fork etc.

# create or edit files vrp.cpp ...
git add vrp.cpp ...
git commit -m "Adding vrp.cpp ..."
git push

These last 3 commands will allow you to back up your changes to the github so if you loose your laptop of the disk crashes, etc all you code will be saved on github. We can also review, comment, and help if you need it, because we can access your files from github also.

When we are ready to merge VRP in the pgrouting core project, it will be easy for me or Daniel to pull your code and merge it.

One more piece of good news is the fact that I think I resolved the server crash issues in the bi-direction. If you have questions on that ask, I sent you an email on it. Also notice that all C++ code needs a try-catch exceptions wrapper around it. Look in the bi-directional code to see that.

Also, I'm moving this to the -dev list so Mukul Priya can also benefit from this discussion as he is our other GSoC student this year.

Mukul, likewise you should do the same for your project.

Best regards,
   -Steve

Hi Steve,
Thank you very much for your detailed suggestion on code management and git. I just sent Daniel a mail on it.I will follow them and let you know if I find any difficulties.
I just read over the mails on the crashing thread. I should have done better. It is a good practice to initialize the vector size beforehand when we are working with std vectors. I am sorry for the inconvenience caused. I hope all is working well now. In any case I will review the codes and check if there are more pitfalls in it.
Thanks for your support. It is always a great experience to work with you.

And Mukul, congratulations and welcome to the community. I am sure you will enjoy the summer.

-Razequl

···

On Tue, Jun 4, 2013 at 12:56 AM, Stephen Woodbridge <woodbri@swoodbridge.com> wrote:

Razequl,

Great to have you back again. This is the community bonding time so it would be good to start outlining your thoughts on your project, geting the development sort out again which you are working.

Daniel already mentioned the you need to work with branch “develop” and not “sew-devel-2_0”, I think you already have a github account, you should fork pgrouting from the github page.

Then do:

create a local branch to do your work in

git checkout -b vrp-project develop
mkdir -p src/vrp/src src/vrp/sql src/vrp/doc src/vrp/test
touch src/vrp/src/CMakeLists.txt src/vrp/sql/CMakeLists.txt src/vrp/doc/CMakeLists.txt src/vrp/test/CMakeLists.txt
git add src/vrp/src/CMakeLists.txt src/vrp/sql/CMakeLists.txt src/vrp/doc/CMakeLists.txt src/vrp/test/CMakeLists.txt
git commit -m “Create initial directory structure for VRP project.”

push you local branch back to your fork

git push -u origin vrp-project

This will create the initial structure for you project in our source tree, look at the CMakeLists.txt files in the ksp or bi-directional tree structure and clone this for your project. I would create a simple “Hello world” app in your vrp tree to work out the issue. Ask if something is not clear.

Now you can create files, add them to your project, commit them locally, push them back to your fork etc.

create or edit files vrp.cpp …

git add vrp.cpp …
git commit -m “Adding vrp.cpp …”
git push

These last 3 commands will allow you to back up your changes to the github so if you loose your laptop of the disk crashes, etc all you code will be saved on github. We can also review, comment, and help if you need it, because we can access your files from github also.

When we are ready to merge VRP in the pgrouting core project, it will be easy for me or Daniel to pull your code and merge it.

One more piece of good news is the fact that I think I resolved the server crash issues in the bi-direction. If you have questions on that ask, I sent you an email on it. Also notice that all C++ code needs a try-catch exceptions wrapper around it. Look in the bi-directional code to see that.

Also, I’m moving this to the -dev list so Mukul Priya can also benefit from this discussion as he is our other GSoC student this year.

Mukul, likewise you should do the same for your project.

Best regards,
-Steve