git学习使用
1,创建一个文件夹,在里面右击打开git bash here,输入git init进行初始化,生成.git文件夹,初始化一个git仓库
git init
2,创建完仓库之后,就可以在里面写代码了,自报家门(后面用到还有别的),全局配置
git config --global user.name "名字"
git config --global user.email "邮箱"
3,检测未提交的东西,红色为未提交
git status
4,使用git add .将未提交的提交到仓库中,这时候再来用git status查看,发现已经没有红色未提交的文件了,变成绿色的,代表着修改过的
git add .
5,使用git commit -m "说明"提交并备注信息,提交之后在输入git status发现已经提交成功,连绿色都没了。必须要有说明,否则不能提交。
git commit -m "说明"
显示当前在主分支,没有东西要提交。截至目前已经提交至本地仓库了
6,在git创建完仓库之后,在本地要与git进行关联,才能push
git remote add origin https://github.com/niandoubao123/studyGit.git//关联git
git push -u origin master//push进去
在push进去的时候出现了一个fatal,错误,但是他自动弹出,让你输入名字以及密码,输入正确,等待自动push完成
7,传统方式上传代码(命令行)
git add .
git commit -m "说明"
git push
也可以不通过git add .直接进行存储到仓库中,一次性操作,把add和commit进行合并
git commit --all -m "说明"
8,使用vscode提交
显示有一个未提交,点击“对号”提交到本地仓库,再点击“···”弹出框
点击推送就相当于git push,在输入框输入一句信息,回车即可
10,查看提交记录,查看日志,每次都会自动生成一个版本号,可利用他进行版本控制
git log
也可以使用git log --oneline显示在一行,精简一些查看日志
git log --oneline
11,当我们不小心改错代码,删错代码,可以使用git版本回退
reset重置 --hard拿回代码并且覆盖已经有的代码 Head默认指向目前操作所基于的哪个版本,也就是最后提交的哪个版本 Head~0回退一次(0就是最近的一次) Head~1回退再之前的一次
这个不是很常用,常用的是通过版本号进行控制,请看12
git reset --hard Head~0
Head指向当前以及之前的,如果Head在第一个处,也只会显示第一个
12,git通过版本号进行回退
git reset --hard 版本号
//如果回退到之前的,看不到之后的版本号了,可以使用下面这个命令
git reflog //看到所有切换版本号的记录 也可以看到所有提交的版本号
git reset --hard 72944fa //输入版本号
13,开发一个功能,但是工作量比较大,但是不提交别人就没法写,可以创建分支,在创建一条时间线,git创建分支,但是在这个分支的内容别人无法访问到,可以完成之后再合并,就可以回到主分支
git branch fenzhi //创建一个分支并命名
git branch //查看分支
git checkout fenzhi //切换分支
注意后缀分支已经发生变化
查看状态,在分支里面写内容并进行提交,提交到分支的仓库中
git add .
git commit -m "在分支里面写项目四"
当功能完成之后,再一次提交,查看日志可以看到切换分支,以及提交记录
git add .
git commit -m "功能四完成了"
git log --oneline //查看分支
但是目前也还是在自己的分支中,别人看不到你的东西,需要切换会主分支,但是目前切换回来查看日志,就出现了看不到分支上的内容的情况
git checkout master //切换回master
git log --oneline
所以需要再进行合并分支,在主分支这里输入进行合并分支
git merge fenzhi
此时合并完成之后,再查看日志,发现多了两条记录,就是在分支里面的两条日志,已经合并过来,对比上上张图片可以看出
完整过程就是
14,git删除分支
git branch -d fenzhi //删除这个分支 当然了不能在当前分支删除自身分支
15,有个问题,如果我在分支中写了东西的同时,并且也在主分支写了东西,再切换回去master,然后在主分支进行合并的时候,
这个时候就需要手动合并了
16,从本地向git上传数据是push,从git向下拿数据是pull,创建一个文件夹,git init 打开git bash here,使用命令
git pull https://github.com/niandoubao123/studyGit.git master
就拿下来了
也可以查看日志
完整过程
17,git clone,这个会自己新建一个名字为仓库名的文件夹,存放拿下来的数据,不过开发过程中通常使用pull
文件夹如下
数据push及pull
18,ssh方式上传代码,验证是一定要验证的,但是这个不用输入密码,而常用的https一个网址进行上传,通常要输入密码