zoukankan      html  css  js  c++  java
  • git版本控制系统重新认识

    git 版本控制系统
    目标:完全搞懂git分布式版本控制系统
    搭建git版本控制系统
    cvs集中化版本控制系统--集中式管理的服务器
    git分布式版本控制系统--会将原始代码仓库镜像下来

    新项目使用git管理,初始化
    git init
    从现有仓库克隆
    git clone url filename

    已跟踪
    未更新、未修改
    已修改
    已放入暂存区

    未跟踪

    检查当前文件状态
    git status

    跟踪新文件,暂存已修改文件
    git add filename

    忽略某些文件
    创建.gitignore 文件

    查看尚未暂存文件更新内容
    git diff

    查看已经暂存和上次提交时的快照之间差异
    git diff --cached
    高版本可使用 git diff --staged

    提交暂存区的更新
    git commit
    -m 后添加提交说明

    跳过暂存区直接提交快照
    git commit -a -m

    移除跟踪文件
    git rm filename
    删除之前已经存入暂存区的,需加参数-f 强制删除

    移除跟踪文件但不删除文件(稍后在.gitignore文件中补上)
    git rm --cached filename

    移动文件/修改文件
    git mv file_form file_to

    查看提交历史
    git log
    -p 展开每次提交差异 -2 则是最近两次提交内容
    --pretty 制定不同格式展示历史内容(参数oneline、short、full、fuller)

    使用图形化工具查看提交历史
    gitk 软件

    修改最后一次提交
    git commit --amend

    取消已经暂存的文件
    git reset HEAD file

    取消对已经暂存的文件的修改
    git checkout -- file

    查看当前的远程库(默认origin未远程库名)
    git remote (-v 显示对应的克隆地址)

    添加远程仓库
    git remote add [shortname] [url]

    从远程仓库拉取数据
    git fetch [remote-name]
    git clone 就是自动创建本地仓库master分支跟踪远程仓库master分支

    推送数据到远程仓库
    git push [remote-name] [branch-name]

    查看远程仓库信息
    git remote show [remote-name]

    远程仓库重命名和删除
    git remote rename name_from name_to
    git remote rm [remote-name]

    列出已有的标签
    git tag

    新建含附注的标签
    git tag -a v1.1 -m '说明'
    查看相应标签版本信息
    git show v1.1

    新建轻量级标签
    git tag v1.1

    签署标签
    git tag -s v1.1 -m '说明'

    验证标签
    git tag -v [tag-name]

    后续加注标签
    git tag -a v1.1 校验字符

    分享标签到远程仓库
    git push origin [tagname]
    git push origin --tags(分享所有标签到远程库)

    git命名别名
    git config --global alias.st status

    git分支
    使用分支将你的工作从主线上分离开

    创建分支
    git branch [branch-name]

    切换分支
    git checkout [branch-name]

    创建分支并切换分支
    git branch -b [branch-name]

    合并分支
    git merge [branch-name]

    列出所有分支
    git branch

    查看各个分支最后一次提交信息
    git branch -v

    查看哪些分支已经被合并入当前分支
    git branch --merge

    查看尚未合并的分支
    git branch --no-merge

    删除分支(删除尚未合并分支会报错)
    git branch -d [branch-name]
    git branch -D [branch-name] (强制执行)

    向远程仓库推送数据
    git push origin [branch-name]

    分支式工作流程
    master
    develop
    topic

    服务器上的git

    GIT主要通过本地协议、git协议、SSH协议、http协议传输数据
    除HTTP协议外,其他都需要在服务器端安装并运行GIT

    配置git
    git config --global user.name 'name'
    git config --global user.email 'email'

    git中颜色配置
    git config --global color.ui true/false
    git config --global color.diff.meta 'color-name'

    编辑器中的格式化与空白
    Git可以在你提交时自动地把行结束符CRLF转换成LF,而在签出代码时把LF转换成CRLF
    git config --global core.autocrlf true
    core.autocrlf设置成input来告诉 Git 在提交时把CRLF转换成LF,签出时不转换
    git config --global core.autocrlf input
    window 服务器不需要转换
    git config --global core.autocrlf false

  • 相关阅读:
    在模拟器安装测试APP,给指定设备安装APP
    设置安卓模拟器,打开模拟器,设置语言为中文
    使用appium1.4在android8.0真机上测试程序时报错command failed shell "ps 'uiautomator'"的解决方式
    appium1.4+华为8.0执行自动化脚本,报启动session失败,原因是unicode_ime_apk\Uni codeIMEdebug.apk在手机上已存在,再次安装失败,导致启动session失败,解决办法:换高版本的appium
    搭建appium+maven手机自动化测试环境搭建
    appium1.7的使用
    SDK打开模拟器遇到SDK包里缺少API组件,附上我的解决历程,心累
    简单记录下Jmeter通过CSV保存测试数据,测试用例,及将测试结果导出到Excel里
    基于webpack的React项目搭建(一)
    基于webpack的React项目搭建(二)
  • 原文地址:https://www.cnblogs.com/geek12/p/11051474.html
Copyright © 2011-2022 走看看