一丶git init
- git init:初始化仓库,生成.git文件
- 如果是在非空文件中执行,应该:使用以下命令,追踪文件,并初始提交
git add *.c
git add LICENSE
git commit -m 'initial project version'
二丶git clone
- 使用url进行克隆
git clone <url> - 克隆之后修改自己本地仓库名字
git clone <url> 'your repo name' - 支持https://协议,git://协议,ssh协议,eg:user@server:path/to/repo.git
三丶git status
查看状态(以及输出解释)
git status #详细 git status -s #简短 git status --short # 简短 #输出解释:分左右两栏:左边暂存区状态(前缀),右边为工作区状态 # 前缀A:新添加到暂存区文件 # 前缀?? 新添加且未被跟踪 # 前缀M:在工作区已修改但未暂存 # 前缀MM:已修改,暂存后又进行了修改跟踪文件:
git add
四丶忽略文件配置
规范:
- 所有空行或者一#开头的行都会被忽略
- 可以使用标准的glob模式匹配,他会递归的应用在整个工作区
- 匹配模式以 “/”开头会防止递归,以其结尾指定目录
- 要忽略指定模式意外的文件或目录,可以在模式前加!,表示取反
glob模式
- (*)匹配零个或多个任意字符
- [abc] 匹配任何一个列在方括号中的字符 (这个例子要么匹配一个 a,要么匹配一个 b,要么匹配一个 c)
- (?)只匹配一个任意字符
- [0-9] 表示匹配所有 0 到 9 的数字
- (**)表示匹配任意中间目录:比如 a/ **/z 可以匹配 a/z 、 a/b/z 或 a/b/c/z 等
五丶git diff
- 相对于git status 更加详细,可以具体显示哪些行发生了变化
git diff # 显示未暂存的改动 git diff staged # 显示已经暂存的改动 git diff cached # 与上一个一样
六丶git commit
- 提交会打开文本编辑器,进行注释的编写
- 跳过暂存区域,省略add,但是过程是先一并暂存再提交
# 默认会有最后一次git status 的输出 git commit # 使用参数-v会将所更改的diff呈现在编辑器中 git commit -v #跳过add git conmmit -a # 删除 先执行 rm 文件名 # 再执行,这样不会被纳入版本管理 git rm 文件名 #删除之前修改过或已放到暂存区的文件,git不可恢复 git rm -f #删除暂存区文件,但仍在工作目录 git rm --cached # 移动文件或者重命名 git mv name1 name2
版权声明:本文为weixin_44297716原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。