Nmap Development mailing list archives

Re: Developing Nmap with git


From: Daniel Miller <bonsaiviking () gmail com>
Date: Mon, 16 Jul 2012 21:53:31 -0500

On Mon, Jul 16, 2012 at 8:48 PM, Daniel Miller <bonsaiviking () gmail com> wrote:
On Mon, Jul 16, 2012 at 6:15 PM, Ron <ron () skullsecurity net> wrote:
Hey everybody,

I know a few people here use git to develop Nmap. I'm not too experienced with git, but I'd like to give it a try. 
Any advice from people who've done it before?

So far, I've done 'git svn init' and 'git svn fetch'. I'd like to be able to:
a) Store it on github so I can clone it from my various machines
b) Be able to pull in changes from nmap's subversion tree
c) Be able to send my changes back to nmap's subversion tree when they're ready

Any advice on the best way to do this?

Thanks!

Ron

Ron,

I've been using git-svn just like this, and it works great. Here are some tips:

1. To store on github, create a new repository, then in your local
working directory do the "git remote add" command Github suggests,
except name it something besides "origin". Git-svn will have its own
remote that you don't access with standard git commands, so when you
want to push to Github do "git push github".

2. Keep the master branch as the clone of the official Nmap SVN, and
do all local development on topic branches. Whenever you want to pull
updates, do "git svn rebase" from the master branch, then "git merge
master" from your topic branches as needed/desired. If you want to
track your branches on github, do "git push github branch-name".

3. For pushing to SVN, make sure master is up to date ("git svn
rebase"), switch to your branch containing your desired changes, "git
merge master" then switch over to master. Do a "git merge --squash
topic-branch", which will do the merge without doing a commit. Double
check your changes with "git diff HEAD". If everything looks good,
"git commit" and the commit message will be prepopulated with all the
merged commit messages. Edit as needed and complete the commit. To do
the actual push, run "git svn dcommit".

Hope this helps! Maybe this info should be put on secwiki.org.

Dan

I added a new page to SecWiki: https://secwiki.org/w/Using_Git_with_Nmap

Please contribute your own tips!

Dan
_______________________________________________
Sent through the nmap-dev mailing list
http://cgi.insecure.org/mailman/listinfo/nmap-dev
Archived at http://seclists.org/nmap-dev/


Current thread: