安装GIT
上 GIT官网 选择自己对应的系统版本 下载安装。
初始化仓库
$ git init
克隆已有仓库
$ git clone [url] //如下例:
$ git clone https://g*.com/c****/***.git
$ git clone https://g*.com/c****/***.git otherName //重命名为
查看仓库状态
$ git status
$ git status -s //简写的更为紧凑的格式输出
忽略文件.gitignore的配置
$ touch .gitignore //创建 找个文本编辑器编辑需要忽略的文件或文件夹
demo/ //忽略demo文件夹下所有文件
demo/*.txt //忽略demo下的所有txt文件但不含子目录
demo/**/*.txt //忽略demo下所有txt文件
...
$ cat .gitignore //查看哪些是需要忽略的
添加至暂存区
$ git add * || a.txt || *.css //视情况选择
//取消暂存
假如修改2个文件,想做两个独立提交 却输入了 git add * 执行如下操作:
$ git reset HEAD a.txt //取消a文件的暂存
移除文件
$ git rm * || *.txt || ...
//文件继续保留在磁盘上,但取消git的跟踪
$ git rm --cached me.txt
$ git rm log/\*.log
移动文件(改名)
$ git mv fileFrom fileTo
$ git mv a.txt aa.txt
//撤销对文件的修改
$ git checkout -- [file] //危险命令,请确认是否确实不再需要 留在分支中去做更好。
配置
$ git config --global user.name czx****0
$ git config --global user.email czx****@163.com
//查看配置信息
$ git config --list
//具体一项 如:
$ git config user.name
提交
$ git commit -m 'test first time'
//最好不要忘记-m 说明,简短说明此次增加或改动的相关功能文件,以备查看。
//未带-m 说明时会进入vim。 按i键,光标闪动在最上面,此时可输入提交说明信息 输入完成后按Esc键, 输入:wq退出vim 回到git界面
//自动暂存并提交所有已跟踪过的文件,省略一个git add步骤。
$ git commit -a
$ git commit --amend //撤销操作 如下例子:
$ git commit -m 'fisrt com'
$ git add someFiles
$ git commit --amend
//最终只有一个提交,第二次将代替第一次结果
查看提交历史
$ git log [-p] [-2] // -p显示每次提交的内容差异 -2最近两次提交 --其他选项 记得查询官网文档
$ git log -2
commit 0bfb97a55ef3a20912b108cdee8683cc20e3e135
Author: czx <*****@163.com>
Date: Fri Jun 2 17:54:48 2017 +0800
test 03 delete .idea
commit 4aa99b4ce4ed6cfecdb2643ff1a5b34ee71c0e7d
Author: czx <*****@163.com>
Date: Fri Jun 2 17:52:03 2017 +0800
test 02
回到某个历史版本
在log命令后, 找到commit值 执行下面命令
git reset --hard 4aa99b4ce4ed6cfecdb2643ff1a5b34ee71c0e7d
远程
//增加远程仓库 $ git remote add <name> <url>
$ git remote add origin https://gitghub.com/c***0/test01.git
//推送至仓库
$ git push [remoteName] [branchName]
$ git push origin master //默认的分支
//查看远程仓库
$ git remote -v
$ git remote show [remoteName]
$ git remote show origin / mytest / aa /...
//获取远程仓库数据
$ git fetch [remoteName]
$ git fetch origin / mytest / ab / ...
//远程仓库移除与重命名
$ git remote rename oldName newName
$ git remote rm mytest
列出标签
$ git tag //所有
$ git tag -l 'v1.3.*' //只列出1.3系列的
//创建附注标签
$ git tag -a v1.2 -m 'my version 1.2'
$ git show v1.2 //显示标签对应信息
//创建轻量标签
$ git tag v1.2-lw
$ git show v1.2-lw
//推送标签共享
$ git push origin v1.2
$ git push origin --tags //批量推送
GIT别名
$ git config --global alisa.co checkout
$ git config --global alisa.cm commit
$ git config --global alisa.br branch
$ git config --global alisa.st status
//以后输命令时 简写如:$ git cm ,$ git st 等等
$ git config --global alisa.unstage 'reset HEAD --'
$ git unstage fileA <=等价于=> $ git reset HEAD -- fileA
$ git config --global alisa.last 'log -1 HEAD'
$ git last //查看最后一次提交
获取帮助
//verb 表示具体命令 如push commit add 等
$ git help <verb>
$ git <verb> --help
//如 获取config命令的手册
$ git help config
常用指令
- pwd //显示当前工作目录
- ls //列出当前目录下所有文件
- mkdir //创建目录
- rmdir //删除目录
- cd //进入**目录
- touch //创建文件
- cat //查看指定文件的内容
- clear //清空当前屏幕信息
小白菜学习笔记,根据我自己的理解整理记录,
如有理解偏差及错误,请大神们不吝赐教。