{"id":28239526,"url":"https://github.com/shenxiaolong-code/sourceindexlight_forgit","last_synced_at":"2026-07-03T06:03:01.322Z","repository":{"id":266613333,"uuid":"318105014","full_name":"shenxiaolong-code/sourceIndexLight_forGit","owner":"shenxiaolong-code","description":"debug tools : windbg source index solution for git projects (source faster, debug slower)","archived":false,"fork":false,"pushed_at":"2022-01-06T10:10:00.000Z","size":17,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-11T07:43:46.046Z","etag":null,"topics":["debug","dumpanalysis","git","sourceindex","windbg"],"latest_commit_sha":null,"homepage":"","language":"Batchfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/shenxiaolong-code.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-12-03T07:02:11.000Z","updated_at":"2022-03-08T08:22:29.000Z","dependencies_parsed_at":"2024-12-05T07:26:59.901Z","dependency_job_id":"8f47aac5-f2b5-41cd-b621-6669c7963f9a","html_url":"https://github.com/shenxiaolong-code/sourceIndexLight_forGit","commit_stats":null,"previous_names":["shenxiaolong-code/sourceindexlight_forgit"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/shenxiaolong-code/sourceIndexLight_forGit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shenxiaolong-code%2FsourceIndexLight_forGit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shenxiaolong-code%2FsourceIndexLight_forGit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shenxiaolong-code%2FsourceIndexLight_forGit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shenxiaolong-code%2FsourceIndexLight_forGit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/shenxiaolong-code","download_url":"https://codeload.github.com/shenxiaolong-code/sourceIndexLight_forGit/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shenxiaolong-code%2FsourceIndexLight_forGit/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35074237,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-03T02:00:05.635Z","response_time":110,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["debug","dumpanalysis","git","sourceindex","windbg"],"created_at":"2025-05-19T02:12:36.922Z","updated_at":"2026-07-03T06:03:01.278Z","avatar_url":"https://github.com/shenxiaolong-code.png","language":"Batchfile","funding_links":[],"categories":[],"sub_categories":[],"readme":"\r\n\r\n# SourceIndexLight_forGit  \r\nwindbg source index for git repo -- it is faster than the sourceIndex_forGit.  \r\nThe current windbg source index suite doesn't support git repo. here one solution is given by DOS script.\r\n\r\n# source index Usage  \r\n- Syntax:  \r\n  gitIndex.cmd \\\u003csourceCodeDir\\\u003e \\\u003cpdbFilePath\\\u003e\r\n- example\r\n  gitIndex.cmd \"d:\\myProject\\newFeature\" \"d:\\myProject\\newFeature\\output\\bin\\myApp.pdb\"  \r\n  gitIndex.cmd will make source index for this pdb file \"d:\\myProject\\newFeature\\output\\bin\\myApp.pdb\" and update this pdb file.  \r\nyou can refer to the example in path : test/TC_gitIndex.bat  \r\n\r\n### Prompt\r\n-  for one solution with many projects/binary modules, one time is enough to call gitIndex.cmd.  \r\n   In general, you can call gitIndex.cmd for your PDB file of the .exe module.\r\n- you can configure the Post-Build Event in your visual studio project to simplify this procedure.  \r\n  teps in solution explorer : .exe project \u003e right click \u003e properties \u003e Configuration Properties \u003e ild Events \u003e Post-Build Event :  \r\n  Command Line : gitIndex.cmd \"$(SolutionDir)\" \\\u003cProjectPdbFilePath\\\u003e\r\n\r\n# you need to do:\r\n1. config windbg tool path  \r\nif your windbg tool \"pdbstr.exe\" is added to %path%, you needn't do anything, else you need to update the file \"userLocalPathConfig.bat\"  \r\nbelow is my windbg x86 path setting:  \r\nwhere pdbstr.exe 2\u003enul || @set \"path=C:\\Program Files (x86)\\Windows Kits\\10\\Debuggers\\x86\\srcsrv;%path%\"  \r\nwhere windbg.exe 2\u003enul || @set \"path=C:\\Program Files (x86)\\Windows Kits\\10\\Debuggers\\x86;%path%\"  \r\n\r\n2. prepare one local git repo  \r\nit is used to update the git repo to a specified commit id.   \r\n\r\n    example:   \r\n    assume your git repo path is \"D:\\sourceCode\\myProjectGitRepo\"   \r\n    your git url is https://..../myRepo.git   \r\n    you need to set environment varialbe :  \r\n    set \"gitRepo_myRepo=D:\\sourceCode\\myProjectGitRepo\"  \r\n    see *:getRepoFromEvnVar* in **gitFetchRepo.cmd** for detail.  \r\n    *this variable is used in \"gitFetchRepo.cmd\" , certain you can edit \"gitFetchRepo.cmd\" directly without puting it into system environments*.  \r\n\r\n# use symbol with source index \r\n1. debugg application  \r\n   after you config your symbol path, the debugger will download the symbol file(.pdb) automatically.  \r\n   and source server (srcsrv) will fetch the correct version source file according to the source index information in the .pdb file.  \r\n   after the source file is downloaded , debuger will open it automaticaly and locate the current source code line.  \r\n\r\n2. **optional** download source file manual   \r\n  after your debugger has downloaded the pdbfile myApp.pdb file -- assume its path is \"c:\\symbols\\cache\\myApp.pdb\"  \r\n   - if you defined environment variable gitRepo_myRepo, you can run :  \r\n     gitFetchRepo.cmd \"\" \"c:\\symbols\\cache\\myApp.pdb\"  \r\n     the gitFetchRepo.cmd will update the local repo folder indicated by environment variable    gitRepo_myRepo.\r\n   - if you doesn't define environment variable gitRepo_myRepo  \r\n     if your local git repo is \"D:\\sourceCode\\myProjectGitRepo\", you can run :  \r\n     gitFetchRepo.cmd \"D:\\sourceCode\\myProjectGitRepo\" \"c:\\symbols\\cache\\myApp.pdb\"  \r\n     the gitFetchRepo.cmd will update the local repo folder \"D:\\sourceCode\\myProjectGitRepo\".\r\n\r\n# additional:  \r\n- index slower , debug faster -- use : https://github.com/ShenXiaolong1976/sourceIndex_forGit  \r\n- index faster , debug slower -- use : https://github.com/ShenXiaolong1976/sourceIndexLight_forGit\r\n\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshenxiaolong-code%2Fsourceindexlight_forgit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshenxiaolong-code%2Fsourceindexlight_forgit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshenxiaolong-code%2Fsourceindexlight_forgit/lists"}