Hi NJ,

  Your instructions is great for a beginning developer. Is it possible
to add these or an extended edition including examples and details to
the guide for developers?

Best,
Chenliang Wang

On 12/17/2016 09:32 AM, Nandish Jayaram wrote:
> Hi Auon,
> 
> Hope your exams went well.
> 
> You can do whatever ends up being a better git-learning experience for you.
> Since you just started contributing to MADlib, the easier way to get going
> might be to do what you mentioned. But a better, though a longer way, would
> be to just mess around with branches as a learning experience. For instance
> (be warned, this might not be the best approach and it might sound
> daunting), you can do the following:
> - Create a new local branch (say the branch name is temp-features/knn)
> while on your current master branch (which already has the knn code changes
> in it).
> useful commands: git checkout -b temp-features/knn
> - Go back to your master branch and reset it to the commit SHA before you
> made changes for knn (look at git log command to find the appropriate
> commit SHA).
> useful commands: git log, git reset --hard <commit SHA> (be careful while
> using the --hard flag in general).
> - You essentially want to reach a state where the new branch features/knn
> has the code changes you have made so far for the knn feature, and your
> master branch must be in sync with apache/incubator-madlib's master branch.
> You ideally want your local master to be in sync with your repo master,
> which in turn must be in sync with origin master (apache/incubator-madlib).
> - You might also want to push your master (with --force option) to your
> remote repo, to undo the changes you have made to your repo master branch
> with the previous PR.
> useful commands: git push --force <your repo>
> - Now create a new branch off your master (say branch name features/knn).
> Rebase this new branch with the temp-features/knn branch. You will get the
> knn related changes back on this branch now.
> useful commands: git checkout -b features/knn, git rebase temp-features/knn
> - Address the comments on this PR, and then push the features/knn branch to
> your repo and open a new PR on the branch. Read about git rebase (and try
> using it) before pushing the branch.
> useful commands: (on master branch), git pull --ff-only, (on features/knn
> branch) git rebase -i master
> 
> The useful commands I have mentioned might not do the needful for each
> step. They are just pointers for you. There might be a much more simpler
> way to accomplish all this, and I have no idea if this way would actually
> work correctly. :) But you can (almost) always recover from any mistake you
> make on git.
> 
> NJ
> 
> On Fri, Dec 16, 2016 at 2:57 PM, Kazmi,Auon H <aka...@ufl.edu> wrote:
> 
>> HI NJ,
>>
>> Thanks for your input!
>>
>> Sorry, I was busy with my semester-end exams.
>>
>> I am reading on Git. Should I repeat the process of checking out madlib
>> repo and then again making changes in a local branch?
>>
>>
>>
>> Regards,
>>
>> Auon
>>
>> ________________________________
>> From: njayaram2 <g...@git.apache.org>
>> Sent: Thursday, December 15, 2016 6:24:08 PM
>> To: dev@madlib.incubator.apache.org
>> Subject: [GitHub] incubator-madlib issue #80: KNN Added
>>
>> Github user njayaram2 commented on the issue:
>>
>>     https://github.com/apache/incubator-madlib/pull/80
>>
>>     This is a great start!
>>     I will provide some github-specific feedback here, and more
>> knn-specific
>>     comments in the code.
>>     Git can be daunting to use at first, but it's great once you get a
>> hang of it.
>>     I would recommend you go through the following wonderful book if you
>>     have not already done so:
>>     https://git-scm.com/book/en/v2
>>
>>     When you work on a feature/bug, it is best if you create a branch
>> locally
>>     and make all changes for that feature there. You can then push that
>> branch
>>     into your github repo and open a pull request. This way you won't mess
>> with
>>     your local master branch, which should ideally be in sync with the
>> origin's
>>     (apache/incubator-madlib in this case) master branch. More information
>> on
>>     how to work with branches can be found in the following chapter:
>>     https://git-scm.com/book/en/v2/Git-Branching-Branches-in-a-Nutshell
>>     (especially section 3.5)
>>
>>     One other minor feedback is to try including the corresponding JIRA id
>>     with the commit message. The JIRA associated with this feature is:
>>     https://issues.apache.org/jira/browse/MADLIB-927
>>
>>
>> ---
>> If your project is set up for it, you can reply to this email and have your
>> reply appear on GitHub as well. If your project does not have this feature
>> enabled and wishes so, or if the feature is enabled but not working, please
>> contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
>> with INFRA.
>> ---
>>
> 

Reply via email to