更新:这个问题现在已经解决了 - 使用“添加别名”功能。
原来git 本身没有规定来指定存储库名称。根目录名称是与存储库名称相关的唯一真实来源。 .git/description 虽然只被一些应用程序使用,比如Gitweb。
另外,GitHub desktop 没有规定重命名本地存储库。
解决方法:
覆盖显示的仓库名称(在开发工具中运行:[View > Toggle developer tools])
最好将其保存为 sn-p (Sources > Snippets) [不幸的是,这必须在每次启动时运行]
function getElementByXpath(path) {
return document.evaluate(path, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
}
function overrideRepoNames(repoNames) {
for (x in repoNames) {
getElementByXpath('//*[@id="__ListRow_1-' + (parseInt(x) + 1) + '"]/div/div[2]/span/span').innerHTML = repoNames[x].replace(new RegExp('\\\\','g'), ' \\ ')
}
}
repoNames = ['Ujnotes\\Website\\Framework', 'WCode\\Website\\Framework', 'WCode\\Website\\interim', 'WCode\\Location\\interim', 'Ujnotes\\Website\\interim', 'WCode\\Location\\Paper', 'WCode\\Website\\Project', 'WCode\\Android\\Project', 'WCode\\Windows\\Project', 'WCode\\Location\\Project', 'Ujnotes\\Website\\Project'];
getElementByXpath('//*[@id="desktop-app-toolbar"]/div[1]/div/div/button').addEventListener('click', function(event) {
setTimeout(function() {
if(getElementByXpath('//*[@id="foldout-container"]') != null)
overrideRepoNames(repoNames)
}, 50);
});
这是结果:
这里是AHK 脚本,用于在启动时自动执行脚本 sn-p:
Run, "%LocalAppData%\GitHubDesktop\GitHubDesktop.exe"
winWait, GitHub Desktop
sleep, 1000
send, {CTRLDOWN}{SHIFTDOWN}i{SHIFTUP}{CTRLUP}
sleep, 2000
send, {CTRLDOWN}{SHIFTDOWN}p{SHIFTUP}{CTRLUP}
sleep, 2000
send, {BACKSPACE}
sleep, 100
send, {!}
sleep, 100
send, {ENTER}
sleep, 500
send, {CTRLDOWN}{SHIFTDOWN}i{SHIFTUP}{CTRLUP}