git

1.git简介
git是世界上最先进的分布式版本控制系统
作用:源代码管理
方便多人开发,方便版本控制
git三种状态:已修改、已提交、已暂存
git工作区域:工作区、暂存区、仓库区、远程服务端
2.工作区、暂存区、仓库区
工作区:对文件进行添加、修改、删除等操作
暂存区:是将工作区中的操作完成小阶段的存储
仓库区:代表个人开发的一个阶段完成
仓库区中记录的各版本是可以查看和回退
但暂存区的版本一旦提交就再也没有
在这里插入图片描述
3.git单人操作
安装git:

sudo apt-get install git

查看安装结果:

git

创建项目:在桌面上创建文件夹,表示工作项目
创建本地仓库:切到项目文件夹输入

git  init

点进文件夹CRTL+H会出现一个.git的仓库
配置个人信息:

git config user.name '张三'
git config user.email 'zhangsan@163.com'

在.git仓库里的config中查看配置信息
新建文件:

vim  login.py

查看文件状态:

git status

提交到暂存区:

git add 文件名

从暂存区提交到仓库区:

git  commit -m  '文件描述信息’

从工作区提交仓库区:

git commit -am  '文件描述信息'

查看历史版本:

git log
git relog

从仓库区回退到暂存区:

#第一种
git reset --hard HEAD^
#第二种
git reset --hard  '版本号'

从暂存区撤回到工作区

git checkout ’文件名‘

4.多人git操作
创建远程仓库
https://github.com/qruihua/info.git
配置ssh:
配置ssh公钥入口:
点击头像选择setting
选择SSH and GPG keys 点击右上角的New SSH key
生成SSH公钥:

  ssh-keygen -t rsa -C "账号名"

配置SSH公钥:
在这里插入图片描述
在这里插入图片描述
删除旧的密钥:

rm  -r .ssh

SSH操作报错
解决方案

eval "$(ssh-agent -s)"
ssh-add

克隆项目:
准备两个文件(一个经理文件,一个员工文件)
经理文件:

git  clone  ’序列号‘

配置经理文件、提交暂存区、体检仓库区
推送到远程仓库

git push

在推送的时候需要设置账号与密码

多人开发:
员工文件:
先克隆项目
然后对文件进行编辑
推送到远程仓库
经理文件:
先同步代码
第一次克隆用git clone之后用

git pull

代码冲突:
例:经理把编辑好的文件推送到终端,张三没有同步文件,把之前同样的文件进行编辑推送,导致代码冲突
冲突解决:
原则:谁冲突谁解决,并且要协商
方案:保留所有代码或者保留某一个代码
在这里插入图片描述
补充:
容易冲突的操作方式

多个人同时操作了同一个文件
一个人一直写不提交
修改之前不更新最新代码
提交之前不更新最新代码
擅自修改同事代码
减少冲突的操作方式

养成良好的操作习惯,先pull在修改,修改完立即commit和push
一定要确保自己正在修改的文件是最新版本的
各自开发各自的模块
如果要修改公共文件,一定要先确认有没有人正在修改
下班前一定要提交代码,上班第一件事拉取最新代码
一定不要擅自修改同事的代码
标签:
因为文件过多不容易查找,所以对文件进行打标签

git tag -a 标签名 -m '标签描述'

将标签推送到远程仓库

git push origin 标签名

删除本地和远程标签

#删除本地
git tag -d 标签名
#删除远程仓库
git push origin --delete tag 标签名

分支:
多人开发时,根据功能分开开发,最后合并到一个分支中
master是默认主分支
查看当前分支

git branch

创建并切换分支

git checkout -b  分支名

将分支推送到远程

git push -u origin 分支名

合并分支
合并分支时要在主分支合并

#先切换分支
git checkout master
#合并分支
git merge 分支
#推送到远程
git push

然后其他人同步后,分支合并才算成功

git pull
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值