git命令

git
安装

  • https://git-scm.com/downloads

安装步骤 下一步Next
安装成功后,任意文件夹内鼠标右键,如果看到如下效果,证明安装成功
在这里插入图片描述

配置:

git config --global user.name "xxx"
git config --global user.email "xxx"

查看用户配置的信息:

git config --list 

在这里插入图片描述

初体验
初始化本地仓库:

git  init

纳入git管理→→更新文件对比起始点(和上次做对比):

git add 文件列表(多文件)或是git add .

注释:文件列表(多文件):./a.html ./b.html格式; 后边的 . 代表所有文件

留下版本历史记录:

git commit -m '初始化版本'

查看历史版本:

git log

在这里插入图片描述

查看当前仓库所有文件的状态:

git status

红色说明当前B.html没有在暂存区
在这里插入图片描述

刷新最新历史起始点:

git  add .

给最新版本记录:

git commit -m  "最新版本和描述"

简化操作,假如没有添加新的文件再目录中,可直接将前两步合并:

git commit -m -a "最新版本和描述"

注意:如果忘记了当前项目的状态,可以用git status和git log查看状态,git status后没有显示红色文件,说明当前文件没有被修改,git log后显示的文件最新提交的对比点,和本地没有变化,说明和当前项目没有修改

修改提交的最后一次备注:

git commit --amend

提交代码时候,不加-m,会强制弹出窗口填写备注:

git commit

以上两种都会出现以下这种情况,进入编辑页面:
①执行命令后,会出现如下页面
②在窗口按下i,进入编辑状态,左下角出现插入两个字,
③输入备注信息
④在英文格式下按shift+ :号,左下角出现光标
⑤输入wq,回车后自动跳出页面
在这里插入图片描述

回滚代码
查看历史版本的简化方式,前面的信息就是每次的ID值:

git log --oneline

回滚到指定版本:

git reset --hard 版本号

撤销:
把某些文件移出暂存区,

git rm --cached 文件路径  文件路径

撤销暂存区的代码,撤销后无法找回,慎用!

git checkout .

配置用户权限

在任意地址git页面输入该命令,生成公钥和私钥

ssh-keygen -t rsa -C "你的邮箱地址"

在这里插入图片描述
公钥私钥绑定:
公钥地址从上图中可以找到

当前系统盘C:\Users\计算机账户名xxx.ssh\xxx.pub
找到地址后右击用记事本打开.pub文件,看到如下代码,复制
在这里插入图片描述
粘贴到指定的SSH keys公钥地址,粘贴后保存在这里插入图片描述
在这里插入图片描述

绑定公钥后
推送【本地】到【远程】:
git status 查看本地仓库所有文件状态
git log 查看状态
git add . 更新起始点
git commit -m "备注名" 记录最新版本
git remote add origin 远程仓库地址 与远程仓库建立连接
git push 推送 (看到.done后就证明成功了)
git push -u origin master 第一次上传建议添加-u,这样本地仓库可以和远程仓库关联,关联之后后续推送代码方便
在这里插入图片描述

如果推送失败:
git remote remove origin 移除origin
git remote add origin 远程地址 重新创建远程仓库别名
git push -u -origin master 重新建立分支

origin 别名 在本地创建远程仓库的别名

拉取远程代码
第一次要克隆代码

git clone 远程地址    

下拉分支

git pull  或是git pull origin master

分支:
git branch 查看分支
git branch 分支名 创建分支
git checkout 分支名 切换分支
git log 查看历史版本 没有分支名

删除分支
如果当前分支已经被合并了,可以删除,否则无法删除

git branch -d 分支名 

不管该分支是否已经被合并,强制删除分支

git branch -D 分支名

为什么会有分支:因为公司开发好框架后用的主分支、 各自建立各自的分支进行开发,这样不会造成主分支的冲突

合并分支
合并前提:所有的分支需要commit一个各自的版本!
在主分支进行合并分支(在当前分支下合并需要合并过来的分支)

git merge 分支名字

查看历史版本 所有分支名字

git log

 
 
冲突合并
冲突出现原因:不同分支的 【相同文件 的 相同位置】 的代码都做了修改
冲突窗口展示:
在这里插入图片描述
产生冲突,没有合并成功:
在这里插入图片描述
解决冲突:
代码可以修改和选择,改好后进行更新起始点和备注版本信息
在这里插入图片描述

git add .
git commit -m "解决冲突后第一次提交"

 
 
 

如果开发项目中突然来了一个新的成员,项目组长和新的开发人员的git步骤:

操作流程:
①项目组长先提交当前本地的代码,推向远程仓库;
②新进入该项目的开发人员先进行克隆代码到本地,如果本地仓库有代码,那就直接拉取代码,不了解项目分支的话,可以查看当前的项目分支,为了避免冲突,切换到自己的分支,最后更新文件起始点并备注好当前起始点的版本信息
③项目组长可以查看下当前仓库的状态,备注好版本信息将代码存到本地仓储,然后查看所有的分支,站在主分支的情况下把代码拉下来→合并。如果有冲突,可以进行选择代码,或是改代码,改完后留下的代码不管是谁写的,都需要一次重新纳入git管理,记录一下历史版本信息

具体步骤:
项目组长 :

git push

新开发成员:

git clone
git pull
git branch 分支名
git checkout 分支名
git commit -a -m "版本备注信息"

项目组长:

git status
git commit -m "组长的版本备注信息"
git branch          
git pull 
git merge![在这里插入图片描述](https://img-blog.csdnimg.cn/20210528175057268.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3N1bnNrdG9w,size_16,color_FFFFFF,t_70)
 新成员分支名  *合并分支*	

> 有冲突后:改代码,或是选择代码;
> 留下的是自己的代码或是别人的代码都算一次修改,都要重新提交一次历史版本


冲突后的第一次提交
git add .
git commit -m "合并主分支和新成员分支"
git push              最后可以进行提交

git pull后失败的几种情况,对号入座:

1.假如在拉分支前修改了代码:

git checkout .
git pull 

意思是放弃之前的修改,然后再执行拉取
2.克隆后再去拉取代码必须进入根目录进行拉取

cd 目录
git pull

开发过程中切换分支

假如开发过程中需要先切换分支开发其他分支(例如修改其他分支bug),但是本地未完成开发,需要暂时保存:
1.使用git stash push –m “message” 保存当前的修改
2.切到目标分支修改bug,修改提交后切回原分支
3.使用git stash pop 还原

在错误的分支开发了新功能,新功能还没有在本地进行commit(提交)

使用git stash push –m”message”保存当前的修改

切换到需要开发的分支

使用git stash apply 应用修改

在错误的分支开发了新功能,新功能已经在本地提交了,但是还没有push到远程仓库

git log --oneline 先获取本次commit的hash
git cherry-pick 切到目标分支后将本次commit的修改merge到目标分支
git reset 切回错误分支,回退到之前版本
git checkout – . 清空修改

列举冲突:

1.别人提交过的代码,自己再提交,会出现如下:
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值