git版本管理工具
- List item
git简介:
gɪt是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理,是项目实战中协同开发必不可少的工具。分为工作区,暂缓区和版本库。使用时可推送到的远程托管平台。
git区域和远程代码托管平台简介:
1.git区域
工作区:写代码的区域
暂存区:git提供的暂时存放的区域
版本库:git提供的本地版本信息库
2.远程代码托管平台
github:国外托管平台
gitee: 国内托管平台
gitlab:可通过该平台搭建自己的托管平台
使用场景:
版本存储获取维护:
无远程:在本地 .git 文件夹内维护历时文件
有远程:在本地 .git 文件夹内维护历时文件,同时也将历时文件托管在远程仓库
安装 git:
下载Git 官方地址为:https://git-scm.com/download/win
注:根据自己的电脑系统进行相应的点击下载(32/64)。
本地git仓库初始化:
1、创建项目文件夹(myz)
2、在项目文件夹内并进入程序Git Bash Here
3、建立项目本地git仓库
git初始化命令:($ git init )输入回车
创建完成(看不到git文件夹在查看中设置隐藏文件夹即可)
配置用户信息:
意义:区分不同开发人员的身份(用户名和邮箱)
1、项目级别/仓库级别配置
命令:
用户名: $ git config user.name “用户名”
邮箱: $ git config user.email “…@qq.com”
2、系统用户级别配置(一般只对本级别进行配置)
命令:
用户名: $ git config --global user.name “用户名”
邮箱: $ git config --global user.email “…@qq.com”
提交至本地git仓库及命令:
1、添加到暂存区
命令:$ git add . (工作区更新的内容进行添加)
注:无提示就说明添加成功可以进行下一步操作
2、提交到本地git仓库
命令:$ git commit -m “备注的提交信息”
3、查看提交的版本记录
命令:$ git log
git基本命令:
1、查看当前状态:$ git status
备注:只有一个主分支master,目前没有需要提交的,工作区也没有进行修改等。。。
2、创建工作区文件:$ touch home.txt
查看已经创建了一个文件
查看工作区创建的文件
$ ll
$ ls
3、添加到暂存区 $ git add home.txt
备注:后面跟文件名表示提交一个文件, $ git add home.txt
打点表示提交当前所有修改或者新增的文件 git add .
4、提交到本地版本库 $ git commit -m "1.2"
备注:提交了1.2的版本,在主分支上id为3de… 文件没有进行修改和删除
也可以第一次不备注 进入提交编辑器再写
5、查看本地版本库详细的记录 $git log
备注:在主分支上提交了版本id为…的文件,用户信息… ,提交的时间,版本号
列出全部记录,屏幕无法全部显示用键盘滚动 退出操作:q
简化版的版本记录
$ git log --pretty=oneline
$ git log --oneline
最近的几条版本记录
$ git log -num
所有的相关操作日志的版本记录,版本前进可以参考
git reflog
6、版本回退与前进
备注:版本回退的本质:就是一个HEAD指针的操作
a: 基于commitid的操作 (回退到指定版本)
$ git reset --hard “需要回退到版本的id”
b: 使用^符号操作 (回退到上个版本可叠加)
$ git reset --hard HEAD^
c: 使用~符号操作 (回退到之前第几个版本)
$ git reset --hard HEAD~num
d. 前进到某版本
$ git reset --hard “需要前进到版本的id”
7、撤销修改
工作区撤销:
$ git checkout – index.hmtl
暂存区撤销:
$ git reset HEAD index.html
$ git checkout – index.hmtl
撤销新增工作区的文件:
直接删除或$ rm bar.html
8、删除文件并找回(前提是已经被git管理)
使用版本回退相关处理
9、其他git命令:
清屏操作: $ git clear
自动补全文件名: 按tab
查看工作区创建的文件: $ ll $ ll -a 隐藏文件查看
打开文件的编辑界面: $ vim home.txt
1.插入模式: 按a
2.保存并退出: 按ecs 并输入 :wq
查看文件的内容:cat home.txt
分支git命令:
1、创建并切换分支:
$ git checkout -b “分支名”
2、切换分支:
注:本地有则切换到本地的分支,没有则从远程找,找不到将报错
$ git checkout master
3、查看所有分支:
$ git branch
4、将侧分支合并到主分支:
5、合并冲突提示:
两个分支在同一个代码上的某一个位置做了修改,git合并时不知道该听那个分支。
备注:只需要在工作区选定所需内容删除特殊标记重新添加及提交即可
6、删除分支
a. 已经合并过的分支删除:
$ git branch -d 分支名字
b. 没有合并过的分支,但是里面有代码修改的删除:
$ git branch -D 分支名字
远程库(远程代码托管平台)
1、注册远程仓库平台(gitee)
2、创建远程仓库
3、添加远程地址
注:已经有远程先要删除远程:
$ git remote rm origin
远程推送之本地关联远程地址:
注:origin 为远程的名字可随意写
$ git remote add origin 远程地址
4、本地向远程进行推送
注:第一次推送加-u 后面再推送可以简化为 $ git push
$ git push -u origin master
5、查看本地版本库与远程的关联
$ git remote -v
克隆远程库修改提交流程
1、克隆远程库
$ git clone 远程的地址
2、进入项目进行自己的用户信息配置信息
3、创建并切换到子分支
注:创建子分支再进行修改操作,避免了对主分支的污染
3、将修改后的代码推送到远程分支
add. ===>>commit -m “” ====>>push origin
$ git push origin liuwei-login
注:推送失败原因为没有权限,需要公司设置仓库成员管理员
4、远程合并好后,不用的进行分支的删除
$ git branch -d …
$ git branch -D …
5、再次进入项目需要对克隆的代码进行更新操作(抓取+合并)
$ git pull
拉取远程合并操作:
1、查看分支
查看本地分支:
$ git branch
查看关联的远程分支:
$ git branch -r
查看所有分支:
$ git branch -a
2、将远程的分支抓取到本地与之关联
2、将远程分支切到本地
注:切换时远程有则切下来,没有则报错
2、查看后切换到主分支进行合并
3、重新推送到远程主分支
4、将更新的远程分支抓取合并到本地
秘钥ssh登录
1、查看本地ssh
2、创建本机的秘钥
$ ssh-keygen -t rsa -c “邮箱地址”
3、在电脑主目录下找到.ssh文件中有私钥id_rsa 和 公钥id_rsa.pub
在编辑器打开id_rsa.pub 复制公钥码
4、去远程托管平台添加ssh
例:gitee 设置==》ssh==》粘贴
5、此时克隆项目时就直接使用ssh地址
注:a.先将本地的远程连接地址删除
$ git remote remove origin
a.重新添加连接方式
$ git add origin ssh地址
5、此时重复提交操作