当前位置: 首页 > article >正文

版本控制-git

 基础知识与常用命令

GIT
认识gitC语言写的分布版本控制系统
安装sudo apt-get install git
配置git config --global user.name “I”
初始化版本库git init
常用命令
查看状态git status
查看修改git diff
将修改添加到暂存区git add XX
将暂存区内容提交至版本库git commit -m "message"
查看提交日志git log 、git reflog->记录你操作过的命令
版本回退git reset HEAD^
丢弃修改git checkout -- file  丢弃工作区的修改
删除git rm file  想要恢复用checkout
添加远程仓库git remote add origin  github......  关联远程仓库
推送修改git push origin 'brach'
查看远程仓库git remote -v
克隆仓库git clone ’url‘ 支持https/ssh
删除远程git remote -v  解除远程绑定
分支与标签
创建并切换分支

git checkout -b <name> /git swithc -c <name>, 也可分步执行

查看/删除分支git branch 当前工作分支*标记        git branch -d <name>   -D 强删
合并分支git checkout master   git merge dev 将dev合并到master
合并冲突以<<<<   ======  >>>> 标记出不同分支的修改
stash暂存暂存->git stash  恢复-> git stash appy  删除暂存->git stash drop。 或者 git stash pop 
获取远程最新git pull
合并提交git rebase 
新建标签git tag <name> 默认HEAD,也可指定commit id
指定标签信息git tag -a <name> -m "message"
查看标签git tag
删除标签git tag -d <name>  再推送git push origin:refs/tags/<tag> 删除远程标签
推送本地标签git push origin <name>  / --tags(推送所有未推送过的标签)
自定义git
改显示颜色git config --global color.ui true
忽略特殊文件编写 .gitignore
别名git status <=> git config --global alias.st status

 更多细节

1、git reset

版本回退参数  git reset --hard/soft/mixed
hard后面跟commitID回退指定版本
soft回退指定版本未提交状态 git add但没有git commit
mixed回到上次已修改没有添加修改, 没有git add 和git commit

2、git log

简洁模式git log --oneline  每个提交显示一行包括commit id和提交信息
图形视图--graph 以图形方式展示分支和合并历史
格式化输出--pretty=format:"format"
搜索--grep=<pattern>

 3、工作区、暂存区(index)、版本库

工作区:你项目所在的文件夹目录。
暂存区:用于存储工作区中添加上来的变更(新增、修改、删除)的文件的地方。操作时,使用`git add .`会将本地所有新增、变更、删除过的文件的情况存入暂存区中。
版本库:工作区有一个隐藏目录`.git`,这个不算工作区,而是Git的版本库。版本库里存了很多东西,其中最重要的是称为`stage`(或者叫`index`)的暂存区,还有Git为我们自动创建的第一个分支`master`,以及指向`master`的一个指针叫`HEAD`。

 4、杂项

--global 设置后是本地环境所有git 仓库, 没有加这个参数就是只对本仓库有效, git config --global --list查看全局所有配置

git是跟踪修改不是跟踪文件的。git pull 从远程仓库更新并自动合并到当前分支。 git fetch就是获取更新但是不自动合并。

git中的文件四种状态: 未跟踪、已暂存、已修改、已提交


http://www.kler.cn/news/330705.html

相关文章:

  • uniapp中检测应用更新的两种方式-升级中心之uni-upgrade-center-app
  • 产品经理的学习
  • 构建ID3决策树的算法代码 核心部分详细讲解
  • 掌握 C# 异常处理机制
  • STM32堆栈溢出Bug
  • 排序题目:翻转对
  • mac中文件夹怎么显示.git隐藏文件
  • Unraid的cache使用btrfs或zfs?
  • Python 读取与处理出入库 Excel 数据实战案例(HTML 网页展示)
  • 如何使用ssm实现基于web的网站的设计与实现+vue
  • 【有啥问啥】大型语言模型的涌现能力(Emergent Abilities):新一代AI的曙光
  • Android Camera2 与 Camera API技术探究和RAW数据采集
  • 深入理解 Solidity 修饰符(Modifier):功能、应用与最佳实践
  • 【springboot】整合沙箱支付
  • 亚马逊云乱扣费,被不知不觉扣钱真的好气呀
  • [linux] 磁盘清理相关
  • 数学建模--什么是数学建模?数学建模应该怎么准备?
  • 复现 BEVfusion bug集合(4090d)
  • MySQL的驱动安装
  • 通信工程学习:什么是TCP传输控制协议