git

创建版本库

git init
ls -a
.git git目录用来跟踪版本库

文件添加到仓库
git add a.txt

文件提交到仓库
git commit -m “v1” 备注v1

文件上传到远程库
git push -u orgion master

查看仓库状态
git status

查看历史版本
git log 查看当前状态历史记录,–pretty=oneline 简单输出
git reflog 查看所有历史记录
f026a6c (HEAD -> master) HEAD@{0}: commit: v3
dc1e2ca HEAD@{1}: commit: v2
abdea28 HEAD@{2}: commit (initial): v1

查看工作区和版本库里最新版本的区别
git diff HEAD – a.txt
管理修改
从版本库回退
git reset --hard HEAD^ HEAD@{0}表示当前版本,回退到HEAD版本
git reset --hard HEAD^^ 回退到HEAD@{2}版本
或者
git reset --hard HEAD~1
git reset --hard HEAD~2
或者
git reset --hard commit_id 回退到指定版本

撤销工作区的修改
git checkout – a.txt
一种是a.txt修改后还没有被放到暂存区,撤销修改就回到和版本库一模一样的状态;
一种是a.txt已经添加到暂存区后,又作了修改,撤销修改就回到添加到暂存区后的状态。

撤销暂存区的修改
git reset HEAD a.txt 删除暂存区的文件

删除文件
git rm a.txt 如果一个文件已经被提交到版本库,那么永远不用担心误删
git commit -m “remove a.txt”
分支管理
创建分支
git branch dev 创建分支dev
git checkout dev 切换到分支dev
或者
git checkout -b dev git checkout命令加上-b参数表示创建并切换,相当于以上两条命令

查看分支
git branch

  • dev
    master

切换回master
git checkout master

master合并分支后再删除分支
git merge dev

Updating 78d2980…745616c
Fast-forward 并是“快进模式”,也就是直接把master指向dev的当前提交,所以合并速度非常快
b.txt | 1 +
1 file changed, 1 insertion(+)
create mode 100644 b.txt

git branch -d dev
远程仓库
https://github.com/testder

创建新的仓库(推荐直接克隆远程库)
echo “# test2.0” >> README.md
git init
git add README.md
git commit -m “first commit”
git remote add origin git@github.com:testder/test2.0.git
git push -u origin master

加上了,-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来
在以后的推送或者拉取时就可以简化命令 git push

关联已存在的远程仓库并上传
git remote add origin git@github.com:testder/test2.0.git 关联两个远程库,名字需不同
git remote add origin02 git@github.com:testder/test2.0.git
git push -u origin master

克隆远程从库
git clone git@github.com:testder/tools2.0.git 克隆的已经建立好orgion,无需再次关联
git remote -v 查看远程库信息
git remote rm orgion 删除远程库

收藏 打印