Post

Git-版本控制

Git可以做很多文件的版本控制,尤其是代码文件。我最常用于追踪:tex文件,markdown文件,python文件等。

一个Git入门教程:Git教程


Tex中的追踪设置:仅跟踪指定的文件夹和文件-或者在忽略的文件夹中不忽略指定文件夹和文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# .gitignore 自用忽略规则示例

# 精细化忽略有tex的子文件夹,注意,后面必须有*才表示忽略文件,这样才能用!排除忽略
# 注意这里`/1_Manuscript/*`说明tex在二级文件夹,而`/11_Arxiv/*/*`说明tex在三级文件夹
/0_Fig/*
/1_Manuscript/*
/2_Supplementary_Material/*
/3_Reference/*
/4_Code/*
/5_Visio_or_PPT_File/*
/6_Submit_Related/*
/7_Dataset/*
/8_Dataset_Results/*
/9_Others/*
/10_Presentation_PPT/*/*
/11_Arxiv/*/*
/12_Review/*/*
/90_Backup/*
*.zip

# 排除.tex文件(加入追踪)
!*.tex
# 排除.bib文件(加入追踪)
!*.bib

一些原理代码 参考知乎

1. /位于头部的作用是只忽略当前目录下的内容;放在尾部的作用是只忽略目录

1
2
3
4
5
6
7
8
9
10
11
# 头尾都没有/: 忽略当前目录及下级目录中所有的 runtime。 runtime 文件或目录都会被忽略
runtime

# 头有/: 只忽略当前目录中的 runtime 文件或目录,不忽略下级目录中的 runtime 文件或目录
/runtime

# 后面有/: 只忽略当前目录和下级目录中的 runtime 目录, 不忽略当前目录和下级目录中的 runtime 文件
runtime/

# 头尾都有/: 只忽略当前目录中的 runtime 目录
/runtime/

2. 不忽略: !runtime (前面带有!表示不忽略)

3. * 为通配符

1
2
3
4
5
6
7
8
9
10
#  * 为通配符

# 忽略所有 .log 文件
*.log

# 忽略特定目录下的文件
/some_directory/*.txt

# 忽略任意层级的 temp 目录
**/temp/

Want to see something else added? Open an issue.

This post is licensed under CC BY 4.0 by the author.