- git配置
git config --global user.name "xxx" //配置用户名
git config --global user.email "xxx@xxx.com" //配置邮箱
git config --global core.editor vim //配置编辑器
- 检查配置信息
git config --list //列出所有配置
git config user.name //列出某一项配置
- 获取帮助
git help <verb>
- 获取git仓库的两种方法
-
在现有目录中导入文件到git中
- 初始化仓库
git init //初始化
- 跟踪文件并提交
git add *.c git add LICENSE //add操作可以将内容添加到下一次提交中,包括新文件添加跟踪、已跟踪文件放入暂存、有冲突文件标记为已解决等。 git commit -m 'initial project version'
-
从一个服务器克隆一个现有的git仓库
- 克隆仓库
git clone https://github.com/libgit2/libgit2 //通过https地址进行克隆
- 自定义本地仓库的名字
git clone https://github.com/libgit2/libgit2 mylibgit
-
记录每次更新
- 四种状态:untracked, unmodified, modified, staged
- 检查状态:
git status // 添加-s 输出简洁版本报告
- 简洁版输出前缀:??未跟踪 左M修改过并放入暂存 A新添加到暂存 右M修改了未放入暂存
-
忽略文件:创建名为.gitignore的文件 列出要忽略的文件模式
-
查看修改
git diff //尚未暂存的文件
git diff --cached //已经暂存的文件的变化
- 提交更新
git commit //提交
git commit -m "xxxx"// 将提交信息与命令放在同一行
- 跳过使用暂存
git commit -a // 把所有已经跟踪过的文件暂存后一并提交,即跳过git add
- 移除文件(从已跟踪文件清单)
git rm filename.md // 手工删除文件后需要从git目录中删除,或只从暂存区域删除
- 移动文件
git mv file_from file_to
- 查看提交历史
git log
-
撤销操作
- 撤销提交(会用第二次提交替代第一次)
git commit --amend
- 取消暂存
git reset HEAD <file>... //只修改暂存区域
- 撤销对文件的修改
git checkout -- filename
所有修改都会消失 谨慎使用
-
查看远程仓库
git remote -v //列出所有远程仓库
- 添加远程仓库
git remote add <shortname> <url>
- 拉取远端仓库(需要手动合并)
git fetch <shortname>
- 推送到远程仓库
git push [remote-name] [branch-name]
- 打标签
git tag //列出标签
git tag -l 'v1.8.5*'//列出以v1.8.5开头的所有标签
- 创建标签:轻量标签 附注标签
- 附注标签
git tag -a
```
- 轻量标签
```
git tag <tag name>
```
- 推送标签
tag push origin --tags
- Git 别名:可以通过git config来为每个命令设置一个别名 比如
git config --global alias.ci commit
之后可以使用git ci进行提交
to be done...