MediaWiki
1.30.0
|
Public Member Functions | |
__construct ( $repoDir, $usePrecomputed=true) | |
cacheIsComplete () | |
Check to see if the current cache is fully populated. More... | |
getCurrentBranch () | |
Get the name of the current branch, or HEAD if not found. More... | |
getHead () | |
Get the HEAD of the repo (without any opening "ref: ") More... | |
getHeadCommitDate () | |
Get the commit date of HEAD entry of the git code repository. More... | |
getHeadSHA1 () | |
Get the SHA1 for the current HEAD of the repo. More... | |
getHeadViewUrl () | |
Get an URL to a web viewer link to the HEAD revision. More... | |
precomputeValues () | |
Precompute and cache git information. More... | |
Static Public Member Functions | |
static | currentBranch () |
static | headSHA1 () |
static | headViewUrl () |
static | isSHA1 ( $str) |
Check if a string looks like a hex encoded SHA1 hash. More... | |
static | repo () |
Get the singleton for the repo at $IP. More... | |
Protected Member Functions | |
getRemoteUrl () | |
Get the URL of the remote origin. More... | |
Static Protected Member Functions | |
static | getCacheFilePath ( $repoDir) |
Compute the path to the cache file for a given directory. More... | |
static | getViewers () |
Gets the list of repository viewers. More... | |
Protected Attributes | |
$basedir | |
Location of the .git directory. More... | |
$cache = [] | |
Cached git information. More... | |
$cacheFile | |
Path to JSON cache file for pre-computed git information. More... | |
Static Protected Attributes | |
static | $repo = null |
Singleton for the repo at $IP. More... | |
Static Private Attributes | |
static array false | $viewers = false |
Map of repo URLs to viewer URLs. More... | |
Definition at line 26 of file GitInfo.php.
GitInfo::__construct | ( | $repoDir, | |
$usePrecomputed = true |
|||
) |
string | $repoDir | The root directory of the repo where .git can be found |
bool | $usePrecomputed | Use precomputed information if available |
Definition at line 58 of file GitInfo.php.
References $path, cache, cacheIsComplete(), FormatJson\decode(), getCacheFilePath(), and wfDebugLog().
GitInfo::cacheIsComplete | ( | ) |
Check to see if the current cache is fully populated.
Note: This method is public only to make unit testing easier. There's really no strong reason that anything other than a test should want to call this method.
Definition at line 320 of file GitInfo.php.
References cache.
Referenced by __construct(), GitInfoTest\assertValidGitInfo(), and precomputeValues().
|
static |
Definition at line 376 of file GitInfo.php.
References repo().
Referenced by MWDebug\getDebugInfo().
|
staticprotected |
Compute the path to the cache file for a given directory.
string | $repoDir | The root directory of the repo where .git can be found |
Definition at line 102 of file GitInfo.php.
References $IP, $wgGitInfoCacheDirectory, and global.
Referenced by __construct().
GitInfo::getCurrentBranch | ( | ) |
Get the name of the current branch, or HEAD if not found.
Definition at line 237 of file GitInfo.php.
References cache, and getHead().
Referenced by GitInfoTest\assertValidGitInfo(), and precomputeValues().
GitInfo::getHead | ( | ) |
Get the HEAD of the repo (without any opening "ref: ")
Definition at line 159 of file GitInfo.php.
References cache.
Referenced by GitInfoTest\assertValidGitInfo(), getCurrentBranch(), getHeadCommitDate(), getHeadSHA1(), and precomputeValues().
GitInfo::getHeadCommitDate | ( | ) |
Get the commit date of HEAD entry of the git code repository.
Definition at line 209 of file GitInfo.php.
References $basedir, $wgGitBin, cache, getHead(), global, wfEscapeShellArg(), and wfShellExec().
Referenced by GitInfoTest\assertValidGitInfo(), and precomputeValues().
GitInfo::getHeadSHA1 | ( | ) |
Get the SHA1 for the current HEAD of the repo.
Definition at line 183 of file GitInfo.php.
References cache, and getHead().
Referenced by GitInfoTest\assertValidGitInfo(), getHeadViewUrl(), and precomputeValues().
GitInfo::getHeadViewUrl | ( | ) |
Get an URL to a web viewer link to the HEAD revision.
Definition at line 255 of file GitInfo.php.
References $matches, $repo, as, getHeadSHA1(), and getRemoteUrl().
Referenced by GitInfoTest\assertValidGitInfo().
|
protected |
Get the URL of the remote origin.
Definition at line 281 of file GitInfo.php.
Referenced by getHeadViewUrl(), and precomputeValues().
|
staticprotected |
Gets the list of repository viewers.
Definition at line 392 of file GitInfo.php.
References $viewers, $wgGitRepositoryViewers, global, and Hooks\run().
|
static |
Definition at line 368 of file GitInfo.php.
References repo().
Referenced by MWDebug\getDebugInfo().
|
static |
Definition at line 384 of file GitInfo.php.
References repo().
Referenced by MWDebug\getDebugInfo().
|
static |
Check if a string looks like a hex encoded SHA1 hash.
string | $str | The string to check |
Definition at line 150 of file GitInfo.php.
Referenced by MWDebug\getDebugInfo().
GitInfo::precomputeValues | ( | ) |
Precompute and cache git information.
Creates a JSON file in the cache directory associated with this GitInfo instance. This cache file will be used by subsequent GitInfo objects referencing the same directory to avoid needing to examine the .git directory again.
Definition at line 337 of file GitInfo.php.
References cache, cacheIsComplete(), FormatJson\encode(), getCurrentBranch(), getHead(), getHeadCommitDate(), getHeadSHA1(), getRemoteUrl(), wfDebugLog(), and wfMkdirParents().
|
static |
Get the singleton for the repo at $IP.
Definition at line 136 of file GitInfo.php.
References $IP, $repo, and global.
Referenced by currentBranch(), headSHA1(), and headViewUrl().
|
protected |
Location of the .git directory.
Definition at line 36 of file GitInfo.php.
Referenced by getHeadCommitDate().
|
protected |
Cached git information.
Definition at line 46 of file GitInfo.php.
|
protected |
Path to JSON cache file for pre-computed git information.
Definition at line 41 of file GitInfo.php.
|
staticprotected |
Singleton for the repo at $IP.
Definition at line 31 of file GitInfo.php.
Referenced by getHeadViewUrl(), and repo().
Map of repo URLs to viewer URLs.
Access via static method getViewers().
Definition at line 51 of file GitInfo.php.
Referenced by getViewers().