git仓库管理

什么是git?

用于分布式的版本控制文件

为什么要版本控制?

方便保留之前的版本,以便于回滚和修改。

基本原理

  1. 进入要管理的文件夹里面(创建一个新的文件夹mygit)
  2. git init 初始化,使git来控制我们当前的文件夹
  3. git status 检测当前目录下文件的状态
  4. 三种颜色变化
    • 红色:新增的问价(修改了里面的文件)使用 git add 文件名(git add .)可以管理文件
    • 绿色:git已近管理的文件 使用git commit -m '要描述的信息’来生成新的版本
  • 个人信息配置(第一次使用)
 git config --global user.email "邮箱地址"
 git config --global user.name "用户名"
  • 查看版本记录
git log
git relog
git log --graph    #以图的形式展示
git log --graph --pretty=format: "%h %s"        #只显示版本号和版本名

git三大区域

工作区

自动检测文件是否新增or修改

暂存区

工作区处理完之后的文件通过使用 git add 添加至缓存区

版本库

在工作区里面确定更新版本的文件,使用git commit 生成新的版本

回滚

使用add和commit多次更新版本之后
回滚到之前的版本
git log
git reset --hard  (commit后的,用log查看)版本号

如果后悔回到原来的版本
回滚到之后的新版本 
git relog
git reset --hard  (commit后的,用relog查看)版本号

三大区的命令转换

git checkout  -- 文件名   可以把修改的文件在工作区打回原形
git reset Head 文件名  可以把缓存区退回来工作区的修改状态

分支

  • 查看分支
git branch 
  • 基于当前创建一个新的分支
git branch 分支名
  • 跳转到某个分支
git checkout dev(分支名)
git checkout -b new  #在此分支的基础上,再分裂一个分支
  • 主线合并某个分支
git merge  (分支名)
注意合并分支的时候,切换分支
  • 删掉分支
git branch -d 分支名

如果合并的时候,两个分支有相同的文件但是内容不一样,就会发生冲突
手动更改内容,解决冲突

远端存储

  1. 注册github(等仓库)账号
  2. 创建仓库
  • 给远程仓库取别名
git remote add 别名  <仓库网站>
  • 将本地某分支上传仓库
git push -u  <仓库名字>  master[分支名]
  • 将仓库的文件下载下来,第一次
git clone <仓库网站>
  • 将仓库的新代码更新一下
git pull  origin[仓库名] dev[分支名]
  • 使用pull是直接将仓库里面的文件合并到工作区
  • 仓库转版本区,版本区到工作区
git fetch origin dev  #先到版本区
git merge origin/dev  #版本区到工作区

变基(rebase)

应用场景之一:压缩中间版本

压缩当前版本到之前的某个版本

git rebase -i  [版本号]  #从目前版本一直压缩到版本号那个版本
git rebase -i HEAD~3  #压缩三个版本

应用场景之二:将分支合并

在dev分支上

git rebase master  #合并到主分支
git checkout master
git merge dev

应用场景之三:避免分支产生

在接收仓库文件发生冲突时:
git fetch origin dev #先拿到本地
git rebase origin/dev  #进行合并,不产生分支合并
  • 解决冲突之后
git rebase --continue  #继续完成合并

快速解决冲突

  1. 安装beyond compare
  2. 在git中设置
git config --local merge.tool bc4 #给这个比较文件的软件取别名
git config --local mergetool.path '"C:\Program Files\Beyond Compare 4\BCompare.exe"'   #软件的地址
git config --local mergetool.keepBackup false #合并之后不保留原文件
  1. 应用beyond compare解决冲突
git mergetool

多人协同开发

  • 在仓库创建项目,邀请人员
  • tag标签管理
在mster分支打tag
git tag -a v2 -m “第二个版本”
  • 运维人员调试
git clone -b v2 地址

给开源代码做贡献

  1. fork源代码
    将别人的代码拷贝到自己的远程仓库.
  2. 在自己的仓库修改代码
  3. 给源代码作者提交修复代码的申请(pull request)

配置文件

项目配置文件

git config --loal user.name 'WL725'  #这种某个项目的配置

全局配置

git config --global  user.name 'WL725'  #这种所有项目的配置

系统配置

git config --system user.name 'WL725'  #在root权限下配置整个系统

git免密码登陆

URL体现

原网址:https://github.com/WL725/wl.github.io.git
新网站:https://用户名:密码@github.com/WL725/wl.github.io.git
在网站中携带账号密码

SSH实现(企业用的多)

1:生成公钥和私钥(/.ssh目录下)id_rsa.pub 公钥 id_rsa 私钥
	ssh-keygen
2:拷贝公钥的内容,并在github中设置添加
3:在git本地中配置ssh地址
	git remote add ssh地址
4:以后使用
	git push origin master不需要密码	

git自动管理凭证

输入一次后,电脑自动记录账号密码

git忽略文件

让git不再管理当前目录下的某些文件。

*.h
!a.h
files/
*.py[c|d|a]

任务管理相关

  • issues 在git中发布文档以及任务
  • wiki ,在git中项目的文档说明
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值