文章目录
上传项目到git的操作流程(就以下面的DBlog项目为例)
1:在gitee上创建以自己项目名称命名的空项目
2:进入想上传的项目的文件夹第一次最好是空文件夹,然后右键点击
Git Bash Here
//注意:当前git bash的路径,得是需要使用git的项目路径
1
这个是对应的第一步
这个是点击进入Git Bash Here
3: 配置你的用户名及邮箱
$ git config --global user.name "你的用户名"
$ git config --global user.email "你的邮箱"
12
-
配置局部用户信息,可以配置多个小项目每个项目不同小号
git config user.name "你的用户名"
git config user.email "你的邮箱"
-
注意:用户信息一定要真实,至少要能够通过信息,直接联系到,本人git版本文件是隐藏的文件,
-
全局配置用户名和邮箱
全局根目录:gitconfig文件隐藏
局部:在局部隐藏文件中
4:查看用户名及邮箱
$ git config user.name
$ git config user.email
12
5:初始化本地环境,把该项目变成可被git管理的仓库(创建git的暂存区和版本库)
$ git init
1
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ImTpVCod-1635588131304)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211009194403579.png)]
添加到暂存区:在一个文件git bash下操作,文件里操作文件,会产生隐藏文件[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WXIAi8jS-1635588131307)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211009194427133.png)]
6:添加该项目下的所有文件
$ git add . (注意这里有个点)
1
- 以下是都有多个文件,可以一次上传所有文件
git add *
git add .
git add --all
git add -A
7:使用如下命令将文件添加到仓库中去
上传到版本库,版本描述语义化每次版本的信息关键描述
$ git commit -m '本次提交的说明'(说明信息为必填项,最好是信息有意义,便于后期理解)
1
commit后面是版本号:
-
查看版本信息日志,使用q退出
-
git log
,查看的是完整信息 -
git log --oneline
,简短信息显示版本号前7位 -
上传日期是当前传的信息,不会改变时间戳,版本描述第一版本
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lMVFMeId-1635588131311)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211009193027824.png)]
版本可以多次提交会显示所有版本
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-33G7wnZd-1635588131314)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211009193712565.png)]
-
如果查看版本信息时,信息过多被折叠了
-
按回车键,或下键,显示折叠信息
-
按q键退出折叠状态
-
-
-
查看操作信息日志,精简信息
git reflog
显示版本号前7位
-
查看状态
git status
,当更改文件内容时,会提示信息- [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JUXCdJ1T-1635588131316)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211009194134588.png)]
- 文件有变化
- [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4LrD02FQ-1635588131318)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211009195400651.png)]
-
查看不同
git diff
只有不同修改的时候才可以查看修改的信息,上传没改查看没提示- [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Svf6Us8k-1635588131319)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211009200106895.png)]
-
版本回退,比如当客户需要第一个版本时,需要重新打开文件
-
git reset --hard 版本号
,使用前7位版本号就可以,配合git reflog
或git log --oneline
使用 -
注意:
-
尽量不要直接在历史版本中做修改,然后又提交,会删除中间的历史版本,本来有四个提交之后只剩2个
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KqnMQLkh-1635588131321)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211009201417458.png)]
-
最好先建立分支之后,再做老版本的修改
-
git reflog可以看到所有的历史版本简短信息,回到指定版本
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9VNMCgS0-1635588131322)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211009201714675.png)]
-
git log只能看到当前的版本信息修改信息
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NOHae8BV-1635588131323)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211009201655186.png)]
-
-
8:在远程端创建一个仓库(此处参考第一步)
具体怎么创建,参考下图
1
9:将本地代码库与远程代码库相关联
$ git remote add origin https://gitee.com/qlqaq/projects/仓库名称
1
10:强制把远程仓库的代码跟新到当前分支上面。ps:如果仓库为空这一步可以跳过
$ git pull --rebase origin master
1
11:将本地代码推送到指定远程的仓库中
$ git push -u origin master
1
12:下面是可能用到的相关截图
-
这是你gitee创建项目的时候,出来的界面,里面有相关的信息,可以在上传的使用
-
这个是上传步骤完整截图
-
这个是上传成功截图
-
执行最后一步的时候,输入自己的账号和密码
补充知识
git的使用(远程)
-
选择一个提供了远程仓库的平台,可以把本地仓库放到远程仓库里,本地仓库的文件删除可以回退版本找回,但是仓库目录删除,只能通过远程仓库备份找回
常用远程服务器(仓库)地址:
第三方:
https://gitee.com
国内中文网或https://github.com
国外 -
注册账号,登录
-
创建仓库:教程命令
mkdir text109 //创建文件夹 cd text109 //打开文件 git init //初始化项目文件 touch README.md //创建文件 git add README.md //添加暂存区 git commit -m "first commit" //版本描述 git remote add origin https://gitee.com/daily-upward/text109.git git push -u origin master
已有仓库:
cd existing_git_repo //进入已有仓库 //在你的本地仓库添加一个连接远程仓库的地址,建议不要写错 git remote add origin https://gitee.com/daily-upward/text109.git git push -u origin master //
-
将本地仓库与远程仓库建立连接,注意origin是别名
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Rve9dAua-1635588131324)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211009212034483.png)]
-
git remote add 连接别名 仓库地址
-
git remote add origin 仓库地址
-
git remote add abc xxxxxxx更改链接别名
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zxdR1Zbq-1635588131325)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211009203933894.png)]
-
查看当前已有连接
git remote -v
-
删除已有连接
-
git remote rm 连接别名
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q03bInNf-1635588131327)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211009204039898.png)]
-
-
-
上传到指定连接,名字可以自定义,4次提交本地的记录,之前的版本被抹去掉了,因为没有创建分支影响
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sAsH4lyg-1635588131327)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211009204813510.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jONj8MQ4-1635588131329)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211009205032100.png)]
-
语法:
git push -u 连接别名 分支名
-
git push -u origin master
origin和master是默认 -
注意:
-
上传过程中,需要联网
-
如果没有提前进行gitee的秘钥配置,每次上传需要输入用户名和密码(该平台的一般是手机号+自己设置初始密码),直接刷新页面显示
-
-
-
克隆项目
-
本地没有任何与远程仓库相关的内容,需要第一次克隆
-
git clone 远程仓库地址
,别人的项目,下载的项目是以远程仓库的文件命名,如果需要在上传到远程仓库,切换路径打开文件git bash路径到当前目录,win7如果进入到正确的项目会有后缀绿色master标志[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hPOcporF-1635588131331)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211009205812482.png)]
git reflog查看操作,只有下载操作
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VAyMQ5Uf-1635588131332)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211009210250738.png)]
-
克隆到的仓库内自动与远程建立了连接,再git pull下载
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EvImImbF-1635588131333)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211009210417371.png)]
再次修改本地仓库文件上传到远程仓库,不用再建立连接
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6oBkj42K-1635588131334)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211009210813191.png)]
-
五、git的分支操作
-
分支的介绍:副本,平行时空,在团队项目中,每个开发者都应该有自己的分支,只在自己的分支上进行修改,最终将代码提交给组长,由组长审核代码之后,合并分支,防止回退到老版修改数据对新版本信息数据覆盖掉造成影响
-
分支的操作:master是主分支
-
查看分支:
git branch
-
创建分支:
git branch 分支名
-
切换分支:
git chekout 分支名
-
上传分支:
git push 连接别名 分支名
-
删除分支:
git branch -d 分支名
-
合并分支:
git merge 分支名
,比如有一个a分支和b分支,需要把b分支合并到a分支,需要切换到a分支再进行合并, -
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Xa2vQJLS-1635588131335)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211011123117508.png)]
-
git push origin b1查看主分支下版本信息
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dvSsrj7P-1635588131336)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211011124844682.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-feTTWHNM-1635588131336)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211011124906001.png)]
远程仓库分支在远程仓库里删除(管理)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dYxo5AmT-1635588131338)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211011125028269.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EkC5FOEu-1635588131340)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211011125055003.png)]
-
-
文件冲突
-
线下沟通确认,要保留的内容
-
手动删除git添加的冲突标志
-
再次提交到版本库,即可在主分支行看到合并的分支代表合并成功,
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5FkYEryH-1635588131341)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211011124335946.png)]
远程查看分支
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q1dRfFjH-1635588131342)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211011124605377.png)]
再添加分支
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IcNDifc1-1635588131343)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211011124648553.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ToB0Ngv1-1635588131345)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211011124709307.png)]
-
注意:合并时冲突不会报错,需要在
-
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-obVbk2PH-1635588131345)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211011123655107.png)]
-
文件中会显示报错冲突注释,主分支往前走了一步,小分支也往前走了一步,主分支向前走了一步小分支没有同步到,(比如两个人同时修改了文件的同一段代码叫冲突,),需要线下沟通确认,要保留的内容,手动删除git添加的冲突标志再次提交到版本库,即可
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sESTWFCs-1635588131346)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211011123747622.png)]
忽略文件操作新建一个文件,比如node_modules忽略文件,一般项目里的node_modules文件夹,上传删除,packgtion不能删除
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wF2NSRuf-1635588131348)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211011125242440.png)]
-
注意:不允许出现仓库套仓库的操作!!!
新建一个文件,git bash操作,然后在git init,上传远程是传不上去的
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0Tf5XlGP-1635588131350)(C:/Users/Administrator/AppData/Roaming/Typora/typora-user-images/image-20211011125554832.png)]
上传失败的bug:
今天使用git 添加远程github仓库的时候提示错误:fatal: remote origin already exists.
最后找到解决办法如下:
1、先删除远程 Git 仓库
$ git remote rm origin
2、再添加远程 Git 仓库
$ git remote add origin git@github.com:FBing/java-code-generator
如果执行 git remote rm origin 报错的话,我们可以手动修改gitconfig文件的内容
不允许出现仓库套仓库的操作!!!
新建一个文件,git bash操作,然后在git init,上传远程是传不上去的
[外链图片转存中…(img-0Tf5XlGP-1635588131350)]
上传失败的bug:
今天使用git 添加远程github仓库的时候提示错误:fatal: remote origin already exists.
最后找到解决办法如下:
1、先删除远程 Git 仓库
$ git remote rm origin
2、再添加远程 Git 仓库
$ git remote add origin git@github.com:FBing/java-code-generator
如果执行 git remote rm origin 报错的话,我们可以手动修改gitconfig文件的内容
$ vi .git/config