这7个常用Git命令或概念你都知道吗?

liumengyanysu 2020-08-17

本文转载自公众号“读芯术”(ID:AI_Discovery)。

这7个常用Git命令或概念你都知道吗?

1. 以“; ”(分号)分隔的多个git命令

以分号分隔可使用多个Git命令:

$ git --version; git branch // separated by semi-colon 

这7个常用Git命令或概念你都知道吗?

2. git别名命令

命令别名能提高可重用性。

将gitremote -v(用于检查远程源的命令)别名为show-origin:

$ git config --global alias.show-origin  remote -v  
$ git show-origin 

这7个常用Git命令或概念你都知道吗?

将git log --graph--pretty=oneline (打印提交日志的命令)别名为show-graph:

这7个常用Git命令或概念你都知道吗?

3. 名为‘ .git’的隐藏文件夹

隐藏的.git文件夹包含提交、分支和文件的历史记录。因此,需要复制.git 文件夹并复制整个应用程序及git历史记录(提交历史等)。要复制隐藏的文件夹,需要运行-r 选项:

$ cp -r <originalFolder><destinationFolder> 

要查看隐藏的文件夹,需要运行ls-a 而不是ls:

$ls -a 

这7个常用Git命令或概念你都知道吗?

4. 在‘.gitignore’中指定文件夹和文件的多种方法

.gitignore配置文件包含你不想在git系统中管理的文件和文件夹。在.gitignore中指定文件夹和文件的方法有很多种。首先,.gitignore中的#用于注释(类似于Python中的#注释)。

(1) 简单文件名

# exclude dbinfo.php file in git system 
dbinfo.php 

(2) 模式匹配——“globbing”使用星号(*)

globbing是大多数Unix shell使用的通配符技术:

# exclude obj files 
*.obj 

(3) 指定不想排除的文件或文件夹

可以指定不想排除的文件或文件夹。当与团队合作并希望重新声明该文件或文件夹不应从git系统中排除时,这是很有用的做法:

# do not exclude the following configuration file 
!config.php 

(4) 文件相对路径

# exclude the file in the current directory 
/readme.txt# exclude all files in /pub/ directory 
/pub/# exclude all txt files whose parent is docdoc/**/*.txt 

5. 空白信息选项

有时想在没有信息的情况下进行提交,而信息却又是提交的必要条件,可以使用--allow-empty-message选项:

$ git commit --allow-empty-mesage -m "" --- no commit message 

6. 分支层次结构

当分支中带有斜杠(/)时,该分支将存储为目录层次结构:

Branch name 
--> v1.5/feature-1 
--> v1.5/fix-1--> v1.6/feature-2 
--> v1.6/feature-3 
--> v1.6/fix-1 
这7个常用Git命令或概念你都知道吗?

7. 显示日志

显示git日志有多种方法:

(1) pretty=online选项

$ git log --pretty=onelineOR$ git log --oneline 

这7个常用Git命令或概念你都知道吗?

(2) 图表选项

$ git log --online --graph 

这7个常用Git命令或概念你都知道吗?

(3) 数字选项

$ git log --online --graph -5 // SHOW only 5 most recent commits 

相关推荐