1、全局设置:
配置用户名:
git config --global user.name "自己的github的用户名"
配置邮箱:
git config --global user.email "自己的github的邮箱地址"
2、创建版本库
i、在一个合适的地方,创建一个空目录
ii、cd 进入该目录
iii、使用git init 命令把这个目录变成git可以管理的仓库
3、四个区(三棵树)
i、工作区
ii、缓存区
iii、本地仓库
iv、远程仓库(github)
4、常用命令:
i、从工作区放入缓存区使用命令: git add 文件名 //git add . 表示将工作区当前目录下的所有文件放入缓存区
ii、从缓存区放入到本地仓库使用命令:git commit 文件名 -m “注释/摘要信息” // git commit . -m “注释/摘要信息” 表示将缓存区下的所有文件放入本地仓库
iii、查看仓库目前状态使用命令:git status
iv、如果git status 查看有未提交到仓库的文件,则可以通过命令git diff 命令查看修改的内容
v、可以使用 git log 命令查看提交的日志 // git log --pretty=oneline 可以设置日志显示的格式
vi、可以使用git reflog命令 查看所有分支的所有操作记录
5、版本回退
i、git reset --hard HEAD^(或 git reset --hard HEAD~1) 回退到上一个版本
ii、git reset --hard HEAD^^(或 git reset --hard HEAD~2) 回退到上上一个版本,其余的可以参照前一条与此条类推操作。HEAD类似一个指针,指向哪个版本就是使用哪个版本
iii、回退到指定的版本,可以使用命令 git reset --hard 具体版本号(注:版本号不必输全,一般输入前6位即可)
6、git checkout --filename命令的三种情况
i、如果filename 文件自修改后还没有被放入到缓存区,现在撤销修改,工作区中的内容就会回到和版本库中一模一样的状态。
ii、如果filename文件已经添加到缓存区,但尚未提交到本地仓;又做了修改,现在撤销修改,工作区中的内容就会回到缓存区中的状态
iii、总之,就是让这个filename文件回到最后一个git commit 或者 git add 时的状态
7、远程仓库
①创建 SSH Key
i、创建 SSH Key 在git bash 终端输入 ssh-keygen -t rsa -C "自己的github注册邮箱地址"
ii、记录.ssh目录位置
iii、输入Github注册密码(注意:密文输入,终端上不会显示密码)
iv、.ssh下有两个文件①id_rsa 私钥 ② id_rsa.pub 公钥
②github账户上添加公有秘钥
i、左上角图标——Settings——SSH and GPG keys —— New SSH key
ii、测试秘钥是否通过: ssh -T git@github.com
③在github上创建远程仓库
④cd切换到本地仓库下,关联远程仓库 git remote add origin 远程仓库地址 //(远程仓库地址获取方式:在github上进入远程仓库,点击clone or download 选择 use SSH 复制地址即可)
删除关联的命令: git remote rm origin
8、推送本地库内容到远程仓库
① git push origin master
注意:需要先把远程库内容拉到本地,否则会报错
② 忽略特殊文件 .gitignore
9、拉取远程库内容到本地仓库
① git pull origin master
10、实际开发的时候应该是现有远程仓库,本地仓库不是手工创建而是使用 git clone 远程仓库地址 的命令从远程仓库克隆到本地仓库
11、分支管理
①创建分支:git branch 分支名
②切换分支:git checkout 分支名
③查看当前所在的分支:git branch(i、会列出所有的分支;ii、当前分支前面会有一个*号)
④创建与切换同时进行: git checkout -b 分支名
⑤合并到主分支master:
i、使用 git checkout master 本地仓库切换到主分支
ii、使用 git merge 分支名(此处的分支名为要合并到主分支的分支名)
⑥创建远程仓库的分支: git push --set-upstream origin 分支名
⑦删除本地仓库分支: git branch -d 分支名
⑧删除远程仓库分支:git push origin --delete 分支名
12、git clone 与 git pull 的区别 :
①git clone 只克隆远程仓库主分支master上的内容,而git pull 则可以克隆远程仓库指定分支上的内容
②若要克隆远程仓库指定分支上的内容,需要在本地使用命令: git checkout -b 分支名 (也可分步做),在本地创建分支并切换到分支。然后使用 git pull origin 分支名 命令,克隆指定分支的内容
③在本地,切换到工作的分支上,更新完代码之后,使用 git push origin 命令即可上传到远程仓库对应分支上
13、标签管理
①意义:发布一个版本时,我们通常先在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版本。将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来。所以,标签也是版本的一个快照。
②常用命令:
i、git tag 标签名 打标签
1、git tag 标签名 commitID 给指定的commit id 打标签
2、git tag -a 标签名 -m "标签信息" 指定标签信息
ii、git tag 查看所有标签
iii、git checkout 标签名 切换到指定标签
iv、git show 标签名 查看说明文字
v、git tag -d 标签名 删除标签
vi、git push origin 标签名 推送标签到远程
git push origin --tags 一次性推送全部尚未推送到远程的本地标签
vii、删除已经推送到远程的标签:①先从本地删除:git tag -d 标签名; ②再从远程删除:git push origin :refs/tags/标签名
——————————————————————————————————————————————————————————————————————————————————————————————————————————————————
comment:观看千峰教育sunck老师视频及传播博客毕向东老师视频笔记