新建一个Git仓库
- $git init :初始化一个仓库
添加文件到仓库中:
- $git add <file> : 可以反复多次使用,添加多个文件
- $git commit -m <message> : 全部提交给仓库
查看当前的状态:
- $git status : 查看当前仓库的状态,包括已经修改了的还未提交到仓库中的
跟工作区和版本库都会有对比!
- $git diff : 查看当前做了哪些修改(指的是在本地修改的和暂存区的不同之处)
版本回退(是从commit记录中回退):
- $git log : 查看修改历史记录(commit日志)
英文状态下按 Q 退出查看
- $git log --pretty=oneline : 可以配合VSCode来查看Git history
- $git reset --hard HEAD^ :回退到上一个版本
- $git reset --hard id号 :回退到指定版本
- $git reflog :查看所有的commit记录及其id号
工作区和暂存区
工作区就是电脑中能看到的目录,比如Git文件夹
版本库
三个区.jpg$git add 是将文件提交到暂存区
$git commit 是将暂存区中方的所有内容提交到当前分支
创建Git版本库时,Git自动创建了一个master分支,所以git commit 都是提交到master分支上
每次commit都是把缓存区中的所有内容提交到仓库中
撤销修改
-
$git checkout -- readme.txt 把文件在工作区的修改全部撤销。
让文件回到最近一次git commit或是git add时的状态 -
$git reset HEAD <file> 可以把暂存区的修改撤销掉,重新放回工作区
暂存区回到最近一次提交,工作区还是已经修改过的,$git diff 可以查出区别
也就是说暂存区是干净的,工作区有修改
- 然后接着第二步, $git checkout -- <file> 就可以撤销工作区的修改
至此,整个世界都安静了!
这时候,$git diff 和 $git status 都看不到修改了!
- 就算把不该提交的东西commit到了版本库中,也是可以回退的,前提是没有提交到远程仓库中!
删除文件
- $git checkout -- <file> 在工作区中删除了文件,但是是误删,可以通过前边的命令进行恢复
其实就是撤销修改
- $rm <file> 在工作区删除一个文件
可以用 $git status 和 $git diff 查看到当前的删除记录
- $git rm <file> 从版本库中删除文件
接着$git commit -m <说明> 就行了
git查看用户信息
- $git config user.name 查看用户名
- $git config user.email 查看邮箱
- $git config --global user.name 'CYX' 修改用户名
- $git config --global user.email "2344343332@qq.com" 修改邮箱
连接远程仓库(Github、code.aliyun等)
- 本地仓库与远程仓库之间的传输是通过SSH加密的
因为Github需要识别出你推送的提交确实是你推送的,而不是别人冒充的
- git remote add origin git@github.com:XiaohuiSu/test.git
将本地仓库与远程仓库进行关联
- 接下来就可以用VScode进行了
- 暂存所有更改 : 将工作区的更改add到缓存区 等同于 $git add xxx
- 放弃所有更改 : 恢复工作区或是缓存区
- 可以用VScode中的命令终端进行回退
从远程仓库clone
- 在github上新建一个repository
- $git clone git@github.com:XiaohuiSu/xxx.git
clone到当前目录下,文件夹名与仓库名相同
分支
- $git branch dev 创建一个分支
- $git checkout dev 切换到创建的分支
- $git branch 查看当前的分支
- $git merge dev 将dev分支的工作成果合并到master
- $git branch -d dev 删除分支
冲突
master与分支发生冲突,修改了同一个文件的同一个位置,必须手动修改冲突,然后add并且commit
可以用VSCode进行比对
多人协作
$git remote -v 显示连接的远程库 (如果没有推送权限,就看不到Push地址)
$git push origin dev 推送分支,若远程仓库中没有该分支,则会新建一个
注明:本文是作者从廖雪峰Git教程吸收消化所得,详细可见廖雪峰Git教程
网友评论