zoukankan      html  css  js  c++  java
  • git&&SourceTree使用总结

    git&&sourceTree操作学习

    基本操作

    • commit 提交
    • pull 更新代码
    • push 推送代码
    • fetch 抓取代码
    • Branch 新建分支
    • merge 合并代码
    • Stash 暂存代码状态
    • log 输出历史提交
    • reset --hard 回退版本
    • reflog 输出git命令的历史

    git add 文件名

    • 把文件添加到仓库

    git commit -m "说明",提交本次修改

    git status 用于查看工作区状态

    git diff ,用于查看被更改的文件修改前后的区别

    git log ,命令可以查看提交历史

    git log --pretty=oneline ,在一行内打印log

    git reset --hard HEAD^,回退到上一个版本

    • 回退一个版本 HEAD/两个版本HEAD^/指定版本HEAD~n
    • --hard 版本号,可以用于到达任意版本
    • 注:~n与^为寻根操作

    git reflog ,用于输出git的历史命令

    • 通过历史命令可以防止因关闭命令行导致忘记git版本号

    工作区和暂存区

    1. 工作区

      电脑里能够看到的目录一般指工作区,.git文件夹不算,它是git的版本库

    2. Git版本库(.git一般为隐藏文件夹)

      • stage(或者叫index)的暂存区

      • master分支,以及指向master的一个HEAD指针(git版本回退就是根据HEAD指针操作)

      • 工作区-->add操作-->stage暂存区-->commit操作-->(当前)master版本库

      • git管理的文件修改后/新增文件后都需要先将文件添加到暂存区,然后将暂存区的文件commit提交到当前分支

        1. Changes not staged for commit

          表示git中的文件被改变了

        2. unTracked files

          新建的文件,未被追踪


    管理修改

    1. 为什么git比其他版本管理工具优秀?

      • git管理并跟踪的是修改,而非文件
    2. 撤销修改

      • 撤销工作区的修改
        • git checkout -- 文件名,可以放弃工作区的修改,如果暂存区有内容则跟暂存区的内容相同,暂存区为空则跟版本库中的当前分支相同
      • 撤销暂存区的修改
        • git reset head 撤销暂存区的修改再撤销工作区的修改

    分支修改

    1. git checkout -b dev
      • 创建新的名为dev的分支,相当于,git branch dev+git checkout dev,
      • Git branch可以创建新的分支,git checkout可以切换分支
    2. git branch
      • 可以查看分支的情况,当前分支前面会有一个*号
    3. git merge dev
      • merge用于分支合并,可以将后续分支合并到当前分支,一般用的是fast_forward,直接把master指向当前dev的提交,快速合并
    4. git branch -d dev
      • 删除dev分支
    5. git switch -c dev
      • 也可以用于创建分支并切换
      • git switch 用于切换分支,作用和git checkout一样

    SourceTree常见操作

    1. 在SourceTree中追踪分支

    • 用于联系本地分支和远程分支,如果在追踪分支上进行pull和push操作,它会自动拉取或者推送到相关联的远程分支上

    2. 在SourceTree中放弃更改

    1. 放弃工作区的更改
      • 当对原文件进行修改后,可以在工作区(workspace)选中修改过的文件,右键重置,即可放弃更改,恢复到和本地master分支相同的状态
      • 也可以右击重置到提交,可以选择重置到提交,使被更改的文件重置到某个提交的版本
      • 注意:在SourceTree里面的
    2. 修改git分支的名称
      • git branch -m oldName newName

    3.在SourceTree中合并分支

    • 根据日志合并
      • 选中某个提交->选中立即提交合并(如果没有冲突的情况下)->确定,如果有冲突则解决冲突,没有冲突则合并完成
    • 合并已抓取
      • 合并某个已经被抓取到分支的全部内容,用于较多内容的合并

    4.解决合并冲突

    • 打开外部合并工具
    • 使用我的内容解决冲突
    • 使用他的内容解决冲突

    5.分支的回退

    • 命令行下直接使用 git reset --hard commit版本号
    • SourceTree模式下,右击某个提交->将分支重置到这次提交
      1. 软合并
      2. 混合合并
      3. 强行合并
    • 一般使用软合并与混合合并,强行合并的话会导致本地的修改全部被丢失
  • 相关阅读:
    自学Linux Shell2.1-进入shell命令行
    自学Linux Shell1.3-Linux文件系统
    自学Linux Shell1.2-Linux目录结构
    自学Linux Shell1.1-Linux初识
    03 自学Aruba之2.4GHz及5GHz无线信道
    02 自学Aruba之无线频段---ISM频段及UNII频段
    01 自学Aruba之功率单位和相对单位
    1.Zabbix报错信息:It probably means that the systems requires more physical memory.
    自学Aruba5.3.4-Aruba安全认证-有PEFNG 许可证环境的认证配置802.1x
    自学Aruba5.3.3-Aruba安全认证-有PEFNG 许可证环境的认证配置Captive-Portal
  • 原文地址:https://www.cnblogs.com/chenprice/p/12768729.html
Copyright © 2011-2022 走看看