
git diff
git add .
git status
git commit -m xxxxxx
git push origin mastermkdir xxx
cd xxx
git init HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id。
穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。
要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。
git log --pretty=oneline
git log --oneline // 简写
git reflog
git reset --hard HEAD^
git reset --hard HEAD^^
...
git reset --hard HEAD~13 场景1: 当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file。
git checkout其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。场景2: 当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。
git rm xxx.xx
正确的做法应该是:
git rm --cached logs/xx.loggit commit -m "We really don't want Git to track this anymore!"详情见:廖雪峰的这篇文章
要关联一个远程库,首先cd xxx,然后使用命令git remote add origin git@github.com:zhaokang555/xxx.git或者git remote add origin https://github.com/zhaokang555/xxx.git
关联后,使用命令git push -u origin master第一次推送master分支的所有内容
-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改
在~目录下:
git clone git@github.com:zhaokang555/xxx.git或者git clone https://github.com/zhaokang555/xxx.git
git clone命令克隆。
Git支持多种协议,包括https,但通过ssh支持的原生git协议速度最快。
git@github.com:zhaokang555/xxx.git还可以用https://github.com/zhaokang/xxx.git这样的地址。实际上,Git支持多种协议,默认的git://使用ssh,但也可以使用https等其他协议。
Git基本常用命令如下: