Git

正文

之前一直用远程git来存储代码和论文,但每次遇到问题都是临时查下,今天专门开个帖子记录下记录的问题吧

安装

常用操作

服务器端创建远程操作

详情请看网页

远程仓库

  1. 检查远程仓库配置
    git remote -v

  2. 删除本地远程仓库设置
    git remote rm [origin]

  3. 添加本地远程仓库设置
    git remote add [origin] [root@ip:addr]

  4. 修改远程仓库设置
    git remote set-url origin root@ip:addr

  5. 拉取远程git
    git clone [addr]

查看/设置

  1. 查看用户名or邮箱
    git config --global user.name
    git config --global user.email

  2. 设置用户名or邮箱
    git config --global user.name "xxx"
    git config --global user.email "xxx"

  3. 查看其他配置信息(git设置列表)
    git config --list

过滤项目下一些文件不存储到git仓库中

vscode会生成一些类似.history的文件来存储每一次改动,这个无需保存到git中
1. 创建或者打开.gitignore文件
2. 将要过滤的文件写入

1
2
3
4
5
6
7
8
9
10
11
# 忽略文件名为 secret.txt 的文件
secret.txt
# 忽略所有 .log 文件
*.log
# 忽略文件夹 logs 及其所有内容
logs/
# 只忽略 logs 文件夹中的 .txt 文件
logs/*.txt
# 忽略所有 .txt 文件,但保留 important.txt
*.txt
!important.txt

常用指令

1. 从 Git 索引中移除需要过滤的文件,但不删除本地文件:
1
2
3
4
5
6
7
8
# 移除单个文件
git rm --cached secret.txt

# 移除整个文件夹
git rm --cached -r temp/

# 如果你想批量移除 .gitignore 中定义的所有规则匹配的文件,可以使用以下命令:
git rm --cached -r .
2. 指令提交当前版本
1
git commit -m "Remove files from tracking based on .gitignore"
3. 推送到远程仓库
1
git push origin <branch_name> # 例如 git push origin main
example:
1
2
3
4
5
6
7
8
9
10
11
12
*.aux
*.bak
*.bbl
*.blg
*.brf
*.log
*.out
*.fls
*.synctex.gz
*.fdb_latexmk
.gitignore
.history

举例创建一个存储Paper的仓库

  1. 在服务器端创建一个仓库。

    1
    2
    3
    mkdir XMU # 创建一个仓库文件夹
    cd XMU
    git init --bare # 初始化仓库

  2. 本地初始化一个仓库
    直接在vscode旁边git插件上初始化即可

  3. 在本地git仓库上设置远程仓库存储(其实本地git已经能够保存各个版本论文,只是为了避免出现本地电脑故障导致git存储丢失,所以在服务器上相当于一个备份,而且以后如果换设备,直接可以从远程服务器上clone下来)

    如图,设置远程仓库
    仓库地址为: 用户名@ip:仓库路径

    仓库名可以与服务器上不同

  4. 提交与推送


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!