一.Git
开发难题
在实际开发中我们会遇到一些问题,电脑蓝屏,代码丢了,懊悔不?磁盘坏了,文件没了,懊悔不?时间长了,文件找不到了,懊悔不?手欠,之前代码运行好好的,非要去优化下,结果还不如以前,信心满满,之前代码没保存,懊悔不?怎么解决呢?版本控制就可以解决这些难题了。
版本控制(Version Control System),它功能强大,不仅能备份你的文件,还可以实现很多:
记录文件的所有历史变化
错误恢复到某个历史版本
多人协作开发编辑同一个文件
实现功能差异版本(分支),如:mysql、mariadb、percona三个分支
1.概述
是一个版本控制产品,用来实现资源的版本控制,可以把资源随时上传到Git上,可以随时拉取下载
好处:快速恢复到历史版本,容错性高。
**远程仓库:**是指Gitee官网的网址
本地仓库:是指你磁盘里的一个路径,存你即将要上传的资源
本地索引:是指将要提交的数据建立索引,方便查找定位
工作空间:保存了资源的位置
过程:工作空间–>本地索引–>本地仓库–>远程仓库
组成结构图
2.常用命令:
- 克隆仓库(第一次时) clone 克隆
- 对工作目录中文件新增、修改、删除操作 暂存文件,将文件的快照放入暂存区 add 新增
- 把暂存区的内容提交到本地仓库 commit 提交 把本地仓库的内容提交到远程仓库 push 推
- 从远程仓库下载最新内容 pull 拉取
add:把工作空间的资源,添加到本地索引
commit:把本地索引的资源 提交到 本地仓库
push: 把本地仓库的资源 推送到 远程仓库
pull/clone: 把资源从远程仓库下载下来
3.使用步骤
(1)按装Git软件
Git-2.27.0-64-bit,一路next,安装完桌面右键菜单有下面两项,安装完成。选择Git Bash,进入git客户端。
Windows开始菜单
查询git
**(2)在Gitee官网注册账号,使用账号上传资源
(3)创建本地仓库,就是在你的磁盘里建一个文件夹,存放即将上传的资源
(4)创建远程仓库,去Gitee官网创建,存储本地仓库上传的资源
Gitee官网右上角的加号,点新建仓库,设置仓库名称,选开源创建
(5).需要在本地仓库那里,执行一些Git命令.**
git config --global user.name "E-Levinx" #设置了Gitee注册的用户名
git config --global user.email "lyw17478@foxmail.com" #设置了Gitee注册的邮箱
git config --list # 查看设置信息
git init #初始化一个Git的环境
touch 1.txt #创建一个文件
git add 1.txt #添加,从工作空间到本地索引
git commit -m "first commit" #从本地索引提交到本地仓库
git remote add origin https://gitee.com/E-Levin/cgb2106test.git
#添加到指定远程仓库里
git push -u origin master #从本地仓库推送到远程仓库
Username for 'https://gitee.com': #输入自己注册的账号
Password for 'https://lyw17478@foxmail.com': #输入自己注册的密码
第一次执行会弹出下面的用户名、密码框,填写码云的账号信息就可以
4.检查
刷新Gitee官网
5.日常操作
(1)把你要提交的资源拷贝到 本地仓库
(2) 在本地仓库处, 执行以下Git命令提交资源
$ git add . #添加当前目录下文件
$ git commit -m "j2ee part" #提交,设置备注
$ git push -u origin master #推送到远程仓库
远程仓库中的内容下载到本地:
$ git pull #从服务器拉取最新内容
6. 常规Git操作
git 工作区 缓存区 本地仓库 远程仓库
1.检查当前分支 git branch
2.创建分支 git checkout -b 新分支名称
3.推送新分支 git push -u origin 新分支名称 第一次推送需要写-u
4.将文件添加到暂存区 git add .
5.提交代码 git commit -m “提交消息”
6.推动代码到云端 git push
7.合并代码到主分支 git merge 分支名称 在主线中操作
8.克隆代码 git clone “仓库地址”
9.将远程库的数据更新到本地 git pull
7.git中的分支
说明:开发中需要创建自己的分支结构,如果分支中的代码准确无误,应该将分支结构并入主线(master)
步骤:
- 创建分支 git checkout -b 新分支名称
- 推送新分支 git push -u origin 新分支名称
- 修改工作区的内容
- 提交数据 git add. git commit -m “xxxx” git push 提交到分支中
- 切换到分支 git checkout -b 分支名
- 合并分支 git merge 分支名称 (在本地库中合并)
- 将数据推送到云端 git push
- 删除本地分支 git branch -d 分支名
- 删除远程分支 git push origin –delete 分支名
- 切换分支之前需要进行暂存本分支未提交到远程仓库的代码,避免此分支修改的代码带到其他分支 git stash
- 查看暂存的列表 git stash list
6.常见错误
Authentication failed for
任何路径下输入都可以:
git config --system --unset credential.helper
然后提交操作时,会出现询问框,重新输入用户名提示
failed to push some refs to…
这是是因为readme.md 没有存在在本地git中
git pull --rebase origin master #
$ git push -u origin master #推送到远程仓库
–rebase用在合并代码的时候其作用就是在一个随机创建的分支上处理冲突,避免了直接污染原来的分区。
fatal: remote origin already exists
1、先输入$ git remote rm origin(删除关联的origin的远程库)
2、再输入重新执行 git push -u origin master
3、如果输入第1步 还是报错的话,error: Could not remove config section ‘remote.origin’. 我们需要修改gitconfig文件的内容
4、找到你的github的安装路径,我的是C:\Users\ASUS\AppData\Local\GitHub\PortableGit_ca477551eeb4aea0e4ae9fcd3358bd96720bb5c8\etc
5、找到一个名为gitconfig的文件,打开它把里面的[remote “origin”]那一行删掉就好了!
SSL certificate problem: unable to get local issuer certificate
--执行命令解决: git config --global http.sslVerify false
--重新push: git push -u origin master