USTC LaTeX 通过 Git 使用
USTC LaTeX 是主要支持在线使用的LaTeX平台,基于Overelaf开源版进行的开发,直接支持通过Git仓库同步的功能。 使用Git仓库时,我们可以利用本地的代码编辑器,这比使用浏览器上的编辑器要方便得多,因此记录一下对应的做法。
首先,从网站获取Git仓库链接,通常形如https://latex.ustc.edu.cn/git/xxxxxxx.git
,主分支名称为master
(这个似乎不可以修改)。
然后将其克隆到本地,并且重新取一个仓库名,例如 1
git clone https://latex.ustc.edu.cn/git/xxxxxxx.git latex_test
由于项目的文件在平台上随时有可能被更改,在本地仓库对代码进行修改之后,远程推送很可能会出现推送失败的情况,对应的处理措施如下:
- 第一步,我们需要使用其它分支指向本地仓库的最新版本(确保本地的修改不会丢失)
- 第二步,执行如下命令,确保本地仓库与远程仓库的主分支最新版本保持一致
1 | git fetch --all |
- 第三步,在本地尝试合并分支,然后重新推送
由于平台提供的是HTTPS协议URL,我们在远程操作时需要提供USTC
LaTeX平台的用户名和密码, 可以使用下面的命令选择将身份验证信息保存到本地
1
git config credential.helper store
在配置完成后,我们可能需要再执行一次远程操作并输入身份验证信息,Git会将其保存到~/.git-credentials
文件中,在下一次远程操作时自动应用。
如果希望改变凭证的存储位置,也可以使用下面的命令将其存储到本地仓库中(显然还需要通过.gitignore
将其忽略)
1
git config credential.helper 'store --file=.git-credentials'
注意:
- 平台的Git仓库不支持
force push
和force pull
; - 只提供
https
协议的仓库链接,不提供ssh
协议的仓库链接; - 不建议将多个分支推送到远程仓库,因为平台上无法切换Git分支,只会显示主分支的版本;
- 平台对于通过Git仓库上传的以
.
开头的隐藏文件有安全隔离措施(允许通过Git仓库上传,但是在平台上无法查看和使用其内容,只允许下载),在平台上直接创建的隐藏文件是可以查看的,但是一旦通过Git仓库修改,也会被隔离。 - 有时我们需要改变对这种特殊仓库推送时使用的用户名和邮箱,直接修改仓库内的配置文件即可。
- 对于Overleaf的git功能操作也是类似的,不过它会直接生成一个token用于登录,而且免费账户不提供git服务。
最近测试发现,USTC LaTeX 对于Git的支持还是有问题,虽然通过Git成功推送到远程仓库,但是在平台上完全没有看到内容的更新。
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
Comment