Git GitHub

版本管理的演变

vsc出现前

  • 用目录拷贝区别不同版本
  • 公共文件容易被覆盖
  • 成员沟通成本很高,代码集成效率低下

集中式VSC

  • 有集中的版本管理服务器
  • 具备文件版本管理和分支管理能力
  • 集成效率有明显的提高
  • 客户端必须时刻与服务器相连

分布式VSC

  • 服务端和客户端都有完整的版本库
  • 脱离服务端,客户端照样可以管理版本
  • 查看历史和版本比较等多数操作,都不需要访问服务器,比集中式VSC更能提高版本管理效率

Git

git的特点

  • 最优的存储能力
  • 非凡的性能
  • 开源的
  • 很容易做备份
  • 支持离线操作
  • 很容易定制工作流程

最小配置

$git config --global user.name 'your_name'
$git config --global user.email 'your_email@domain.com' 
$git config --local   #local只对某个仓库有效
$git config --global   #global对当前用户所有仓库有效
$git config --system   #system对系统所有登录的用户有效
显示 config 的配置,加 --list
$git config --list --local
$git config --list --global
$git config --list --system

建git仓库

把已有的项目代码纳入git管理

$cd 项目所在的文件夹
$git init

新建的项目直接用git管理

$cd 某个文件夹
$git init your_project #会在当前路径创建和项目名称同名的文件夹
$cd your_project

工作区和暂存区

工作目录->暂存区

git add files

暂存区->版本历史

git commit

文件重命名

git mv 变更文件名 变更后文件名

查看历史

git log

查看简洁的历史

git log --oneline

只看最近的四次

git log -n4 --oneline

看某个分支

git log --oneline 分支名

删除分支

git branch -D 分支名

修改最近一次commit的message

git commit --amend

修改历史commit

git rebase -i 父级commit的id

暂存区和HEAD比较

git diff --cached

工作区和暂存区比较

git diff

让暂存区恢复成和HEAD的一样

git reset HEAD

让工作区的恢复为暂存区一样

git checkout --文件名

取消暂存区部分文件的更改

git reset HEAD --文件名

消除最近的几次提交

git reset --hard 要保留的commit的id

看看不同提交的指定文件的差异

git diff 分支1 分支2
git diff 分支1 分支2 文件名

删除文件

git rm 文件名

stash和文件

git stash #存入
git stash apply #取出,保留stash信息
git stash pop #取出,丢掉stash信息

如何将git仓库备份到本地

常用协议语法格式说明
本地协议(1)/path/to/repo.git哑协议
本地协议(2)file:// /path/to/repo.git智能协议
http/https协议http://git-server.com:port/path/to/repo.git平时接触到的都是智能协议
ssh协议user@git-server.com:path/to/repo.git工作中最常用的智能协议

哑协议与智能协议

  • 哑协议传输进度不可见;智能协议传输可见
  • 智能协议比哑协议传输速度快

禁止向集成分支执行的操作

危险的操作: 会删除变更的历史

git reset --hard  commit的id

危险的操作:不能pull以后进行rebase操作

Github

如何快速淘到感兴趣的开源项目

关键字 在仓库名和仓库描述中进行查询
关键字 in:readme 在readme中进行查询
关键字 starts>1000 根据星的 数量进行查询

怎么选择适合团队的工作流

主干开发
在这里插入图片描述
Git Flow

在这里插入图片描述
GitHub Flow
在这里插入图片描述
GitLab Flow
在这里插入图片描述
GitLab Flow(带环境分支)
在这里插入图片描述
GitLab Flow(带发布分支)
在这里插入图片描述

Git是一个分布式版本控制系统,用于跟踪文件的变化并协调多人在同一个项目上的工作。\[1\]Github是一个基于Git的代码托管平台,可以用来存储、管理和分享代码。\[1\] 在使用GitGithub之前,首先需要安装GitGit可以在多个操作系统上安装,包括Windows、Mac和Linux。你可以从Git官方网站下载适合你操作系统的安装程序,并按照安装向导进行安装。\[2\] 配置Github需要进行以下步骤: 1. 创建一个Github账号,如果已经有账号可以直接登录。 2. 在Github上创建一个新的仓库,用于存储你的代码。 3. 在本地的Git仓库中,将远程仓库克隆到你的电脑上,这样你就可以在本地进行代码的修改和提交了。\[1\] Git的标准工作流程是工作区→暂存区→Git仓库,但有时候可以跳过暂存区,直接将工作区中的修改提交到Git仓库。这可以通过在提交时使用git commit命令加上-a选项来实现。这样Git会自动将所有已经跟踪过的文件暂存起来一并提交,从而跳过git add步骤。\[3\] 希望这些信息能帮助你更好地理解GitGithub的基本概念和使用方法。如果你想深入学习GitGithub,我建议你参考廖雪峰老师的官方网站中的文章,那里有更详细和深入的内容。\[2\] #### 引用[.reference_title] - *1* *2* [手把手教你如何使用gitgithub](https://blog.csdn.net/m0_66614389/article/details/126617370)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [GitGithub的使用](https://blog.csdn.net/DS153/article/details/123555356)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值