Linux Repository Browsing commands:

Get all code cmd: git clone http://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git Linux-main

For no merge patches:
git log --no-merges --format="%h ; %s ; Author = (%an,%ai) ; Committer = (%cn,%cd)" -U10 origin/linux-3.6.y > ../linux.3.6.y.patch_nm

For merge patches:
git log --merges --format="=======%h ; %s ; Author = (%an,%ai) ; Committer = (%cn,%cd)=======" -U10 origin/linux-3.6.y > ../linux.3.6.y.patch_nm

Get First Commit and Last Commit from Stable Branch

Get First Commit: git rev-list --merges --boundary --format="%cd" <Stable branch> | tail -1
Get Last Commit: git log -1 --format="\%cd" <branch>

Get all patches

git log --since=" Sun May 16 01:05:45 2010 -0700" --until='Mon Aug 20 14:45:22 2012 -0400' -p -W --no-merges origin/linux-2.6.34.y > linux_2.6.34.c
git log --since=" Wed Feb 24 17:30:36 2010 +0000" --until='Mon Nov 7 14:19:03 2011 -0800' -p -W --no-merges origin/linux-2.6.33.y > linux_2.6.33.c


http://dolphin.ece.utexas.edu/Repertoire.html

Split

find /home/repo/linux_porting/linux_stable -maxdepth 1 -name '*.c' -exec ./split.py {} \;
ccFinder:
http://www.ccfinder.net/doc/10.2/en/tutorial-ccfx.html

Execute CCFinder

Notice that you will encounter "OutOfMemoryError" if running CCFinder on all mainline logs directly.
Remove the commit 1da177e which is 201920 bytes large.

./ccfx d cpp -v -dn ~/test_dir/lisa/patches/ccFinderInputFiles_new/ -w w- -b 30 -o stable_ccfxd
./ccfx p a.ccfxd > /home/repo/linux_porting/ccFinderFolder/stable_branch_result.txt
./compMetric.py 1 /home/repo/linux_porting/ccFinderFolder/result.txt
Output file: /home/repo/linux_porting/ccFinderFolder/result_out.txt

Execute CCFinder