git使用方法

git与svn的区别:

分布式:

git,除了远程仓库外,每个电脑都有本地仓库备份,和远端服务器没有连接仍可工作。建立连接后,将改动推送到服务器中即可。
数据一致性(推送到远端,最终保持一致)、可用性(断开网络也可用)、分区容错性(建立连接后其他客户端也可拉到代码)。

集中式:

svn,有服务器管理所有源代码,客户要和服务器连接,连接断开就无法工作。

ssh原理

有公钥和私钥(非对称加密方案),公钥发送到远端,私钥在本地,每次提交都是提交内容与私钥进行加密,再提交到远端。远端会拿公钥进行解密。
拉取数据时,远端用公钥加密,本地用私钥解密。

设置远程仓库

裸仓库:git init -bare
非裸仓:git init
git原理:
远端、本地有仓库,有个暂存区index,工作区(代码、资源文件)

git add添加文件到暂存区

git commit xx.c -m “描述” 提交到本地仓库
git push origin master 推送到远端

watch是监视命令结果,可以加时间

git branch显示分支

git checkout feature 切换到feature分支
如何修改远端的内容?
本地地址创建两个(备份),

发生冲突如何处理

git pull将远端代码拉到本地,
head 本地仓库指针
下方是远程仓库
如何修改?
采用本地还是远程,将另外一个删掉,然后git add、git commit
提交修改内容,git push

版本管理标准流程:

master:线上稳定运行的版本
hostfix:
develop:主管从master剪个分支出来,feature是同事从develop分支拉下来开发的分支,开发测试后提交到develop。
主管检查后合并到release中,测试人员从release中测试,合格后release合并到master中,就说明版本打完了可以上线。

git rebase

实现了一个功能,但是分步骤上传了1,2,3,4,现在要将这4个合并成一个步骤

切换分支

git checkout feature
更新代码
git pull oorigin feature
。。。。//代码上传
git rebase -i HEAD~(n) 合并步骤
以上步骤他人可能也会操作,需要:
git rebase develop // 将develop最新代码拉到本地,此时有冲突,要解决冲突
git push origin feature 推送
git checkout develop 切换到主管
git merge feature 主管来合并

如何定位出错的版本?

首先切到develop分支上面,
git bisect 二分查找
git submodule

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值