Skip to content
This repository has been archived by the owner on Feb 12, 2023. It is now read-only.

Added an option to IndexWithSrcTool (-t) #210

Open
wants to merge 5 commits into
base: develop
Choose a base branch
from

Conversation

raymondwu1
Copy link

@raymondwu1 raymondwu1 commented Feb 17, 2019

Fixes #203 .

Checklist

  • I have included examples or tests
  • I have updated the change log
  • I am listed in the CONTRIBUTORS file
  • I have cleaned up the commit history (use rebase and squash)

Changes proposed in this pull request:

  • Added the option to index source files using srctool. This option works with .NET PDBs (C#) and native PDBs (C++) and is useful when dealing with bigger git repositories. It will only index source files from the pdb that are found in git.
  • Core functionality has remained the same, srctool is simply used as an alternative to the getSourceFilesFromPdb method

Sample output from srctool:
image

Tested on gitlink.pdb, we get the following source information for source files:

SRCSRV: source files ---------------------------------------
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Exceptions\GitLinkException.cs*src/GitLink/Exceptions/GitLinkException.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Extensions\BinaryReaderExtensions.cs*src/GitLink/Extensions/BinaryReaderExtensions.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Extensions\PdbExtensions.cs*src/GitLink/Extensions/PdbExtensions.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Extensions\RepositoryExtensions.cs*src/GitLink/Extensions/RepositoryExtensions.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Helpers\PdbStrHelper.cs*src/GitLink/Helpers/PdbStrHelper.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Helpers\PortablePdbHelper.cs*src/GitLink/Helpers/PortablePdbHelper.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Helpers\SrcToolHelper.cs*src/GitLink/Helpers/SrcToolHelper.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Linker.cs*src/GitLink/Linker.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\LinkOptions.cs*src/GitLink/LinkOptions.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Program.cs*src/GitLink/Program.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Providers\BitBucketProvider.cs*src/GitLink/Providers/BitBucketProvider.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Providers\CustomRawUrlProvider.cs*src/GitLink/Providers/CustomRawUrlProvider.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Providers\CustomUrlProvider.cs*src/GitLink/Providers/CustomUrlProvider.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Providers\GitHubProvider.cs*src/GitLink/Providers/GitHubProvider.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Providers\ProviderBase.cs*src/GitLink/Providers/ProviderBase.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Providers\ProviderManager.cs*src/GitLink/Providers/ProviderManager.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Providers\UncProvider.cs*src/GitLink/Providers/UncProvider.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Providers\VisualStudioTeamServicesProvider.cs*src/GitLink/Providers/VisualStudioTeamServicesProvider.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Pdb\PdbFile.cs*src/GitLink/Pdb/PdbFile.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Pdb\PdbInfo.cs*src/GitLink/Pdb/PdbInfo.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Pdb\PdbName.cs*src/GitLink/Pdb/PdbName.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Pdb\PdbRoot.cs*src/GitLink/Pdb/PdbRoot.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Pdb\PdbStream.cs*src/GitLink/Pdb/PdbStream.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Pdb\SrcSrv.cs*src/GitLink/Pdb/SrcSrv.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Pdb\SrcSrvContext.cs*src/GitLink/Pdb/SrcSrvContext.cs
C:\Users\rwu\Documents\repos\gitlink\src\GitLink\Logging\OutputLogListener.cs*src/GitLink/Logging/OutputLogListener.cs
SRCSRV: end ------------------------------------------------

Tested on a C++ project, we get the following source information for source files:

SRCSRV: source files ---------------------------------------
c:\users\rwu\documents\repos\dataserver\engine\ir\vaultcleanup.cpp*Engine/Ir/VaultCleanUp.cpp
c:\users\rwu\documents\repos\dataserver\engine\ir\environment.h*Engine/Ir/Environment.h
c:\users\rwu\documents\repos\dataserver\engine\ir\stdafx.h*Engine/Ir/Stdafx.h
c:\users\rwu\documents\repos\dataserver\engine\ir\threadcontext.cpp*Engine/Ir/ThreadContext.cpp
c:\users\rwu\documents\repos\dataserver\engine\ir\threadcontext.h*Engine/Ir/ThreadContext.h
c:\users\rwu\documents\repos\dataserver\engine\ir\support.cpp*Engine/Ir/Support.cpp
c:\users\rwu\documents\repos\dataserver\engine\ir\irappdomainmanager.h*Engine/Ir/IrAppDomainManager.h
c:\users\rwu\documents\repos\dataserver\engine\ir\exceptionbridge.h*Engine/Ir/ExceptionBridge.h
c:\users\rwu\documents\repos\dataserver\engine\ir\irpointerqueue.h*Engine/Ir/IrPointerQueue.h
c:\users\rwu\documents\repos\dataserver\engine\ir\support.h*Engine/Ir/Support.h
c:\users\rwu\documents\repos\dataserver\engine\ir\vaultcontext.h*Engine/Ir/VaultContext.h
c:\users\rwu\documents\repos\dataserver\engine\support\ceolib\ceolibmanaged.h*Engine/Support/CeOlib/CeOlibManaged.h
c:\users\rwu\documents\repos\dataserver\engine\ir\irbridge.h*Engine/Ir/IrBridge.h
c:\users\rwu\documents\repos\dataserver\engine\pd\pdexception.h*Engine/Pd/PdException.h
c:\users\rwu\documents\repos\dataserver\engine\ir\irhelper.h*Engine/Ir/IrHelper.h
c:\users\rwu\documents\repos\dataserver\engine\ir\stdafx.cpp*Engine/Ir/Stdafx.cpp
c:\users\rwu\documents\repos\dataserver\engine\ir\logging.h*Engine/Ir/Logging.h
... ETC
SRCSRV: end ------------------------------------------------

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant