• 版本控制(.git + .svn + SourceTree)


    git

    • 分布式版本控制系统
    • 底层C语言
    • 按元数据方式存储,采用SHA-1哈希算法(内容完整性好)
    • 结合GitHub,为开源项目免费提供Git存储
    git config --global user.name "xxx"
    git config --global user.email "xxx@xxx.com"
    

    Git 的工作就是创建和保存项目的快照及与之后的快照进行对比。

    仓库,repository,git中最重要的概念。

    存储概念及分支管理

    • 工作区
    • 暂存区:即stage,.git/index
    • 版本库:.git/

    Git提交代码流程: 工作区->暂存区->本地仓库->远程仓库

    命令备忘

    • git config --list:查看git配置
    • git init dir-name:在dir-name目录下初始化.git目录
    • git add:本地改动写入缓存区
    • git commit:缓存区内容添加到仓库(-m "注释",-a 自动提交本地修改)
    • git reset HEAD:取消已缓存的内容
    • git status -s:查看项目当前状态,即与上次快照对比
    • git diff:查看执行 git status 的结果的详细信息(显示已写入缓存与已修改但尚未写入缓存的改动的区别)
    /*diff 命令*/
    尚未缓存的改动:git diff
    查看已缓存的改动: git diff --cached
    查看已缓存的与未缓存的所有改动:git diff HEAD
    显示摘要而非整个 diff:git diff --stat
    
    • git clone <repo> [<directory>]:克隆到指定目录
    /*几种等效的clone命令*/
    git clone http://github.com/CosmosHua/locate new
    git clone http://github.com/CosmosHua/locate.git new
    git clone git://github.com/CosmosHua/locate new
    git clone git://github.com/CosmosHua/locate.git new
    
    • git mv:移动或重命名
    • git rm:文件删除
    git rm <file>:删除本地文件
    git rm -f <file>:同时删除暂存区的文件
    git rm --cached <file>:从暂存区删除,但本地保留
    

    注意,git checkout慎用。

    SourceTree

    SourceTree回滚提交操作步骤

    [1]. 已提交至暂存区未提交至远程分支情况:参考

    •  选中目的回滚到的提交记录,右键-->将所在分支重置到这次提交->强行合并

    [2]. 已提交至远程分支情况

    • 需开启强制推送权限: Git --> Enable Force Push 
    • 选中历史某次提交,右键 重置当前分支到此次提交 ,选择 强行合并 
    • 选中最新一次提交,即待回滚的错误提交,右键 重置当前分支到此次提交 ,选择 软合并 
    • 正常填写comment并提交即可

    注意,回退指的是内容的回退,而不是提交记录的回退, 具体参考

    问题解决

    [1]. 在 SourceTree 客户端克隆码云分支时,遇到

    Cloning into '本地路径xxx'...
    fatal: The remote end hung up unexpectedly
    error: RPC failed; curl 18 transfer closed with outstanding read data remaining
    

    方法1:在userusername.gitconfig文件中新增配置

    [http]
    postBuffer = 524288000
    

    或直接执行:git config http.postBuffer 524288000

    方法2:SourceTree 高级设置-克隆深度,改成非0
    参考:https://blog.csdn.net/PHY1161460191/article/details/88656003

    [2]. 提交时comment格式有误,需要修改Git的提交comment
    在项目的当前.git目录右键启动git bash

    - git commit --amend -m "新的comment"
    - git log 查看提交历史
    

    [3]. sourcetree客户端卡顿情况

    在sourcetree配置中忽略文件: */package-lock.json 

    svn

    • 集中式版本控制系统
    • 按文件存储
    • 拥有全局的版本号

    TortoiseSVN

  • 相关阅读:
    springboot2 pagehelper 使用笔记
    springboot2 config_toolkit 并且设置全局获取数据GlobalUtil
    springboot2 redis
    Python问题汇总
    MAC安装Win10系统安装相关问题
    DEDE开发网站总部
    DEDE 调用文章中略缩图的原图
    塑形动作
    dede初学
    打印机维护经验
  • 原文地址:https://www.cnblogs.com/wjcx-sqh/p/9257852.html
Copyright © 2020-2023  润新知