转载自廖雪峰官网http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
1.安装 git 后,启动 git bash
2.设置 git 用户名和邮箱
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
3.创建版本库
选择一个硬盘位置创建文件,初始化为 git 仓库
$ mkdir learngit //创建文件夹
$ cd learngit //进入文件夹
$ pwd //显示当前文件夹
$git init //初始化 git 仓库
添加文件到 git 仓库,编写一个readme.txt放入文件夹
$git add readme.txt //加入暂存区
$git commit -m "wrote a readme file" //提交所有暂存区修改,并添加本次提交说明
查看 git 仓库状态
$git status //查看当前仓库状态
$git diff //查看仓库中文件的更改
$git log //提交日志
$git log --pretty=oneline //简化版日志 每条日志有一个版本号commit_id
$git reflog //查看历史所有的命令,可用来查看版本号
回退版本
$git reset --hard HEAD^ //回退到上一个版本
$git reset --hard HEAD^^ //回退到上上一个版本
$git reset --hard HEAD~100 //回退到上100个版本
$git reset --hard commit_id //这里的commit_id就是git log日志的版本号
撤消修改
命令git checkout -- readme.txt意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:
一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
总之,就是让这个文件回到最近一次git commit或git add时的状态。
删除修改
$git rm test.txt //从版本库删除文件
$git commit -m "describe" //提交删除修改
远程仓库
$ssh-keygen -t rsa -C "youremail@example.com" //创建电脑ssh key ,如果用户主目录有.ssh目录,就不用创建了,创建时可以选择ssh文件位置,密码等,如无特殊需求可以一路回车选默认
创建后的 .ssh 文件夹有两个文件,id_rsa是私钥 id_rsa.pub 是公钥,公钥需要添加至gitHub,这样在推送时github就可以知道是谁在推送,可以创建多个ssh key 在多个电脑上
连接远程仓库
$git remote add origin git@github.com:ac1579168/learngit.git //origin是远程仓库名称,可自定义,learngit是本地和github上同名的项目,gitHub上新建一个空的learngit项目就行
$git push -u origin master //把本地库推送到远程库
克隆远程仓库
$git clone git@github.com:ac1579168/learngit.git //把远程仓库克隆到本地,会自动创建文件夹