• 关于Git的一点总结


    Git介绍
    Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
    Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
    Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。
    安装配置
    安装很简单,可以直接yum,或者源码包安装
    git --version 查看版本
    Git 提供了一个叫做 git config 的工具,专门用来配置或读取相应的工作环境变量。
    这些环境变量,决定了 Git 在各个环节的具体工作方式和行为。这些变量可以存放在以下三个不同的地方:
    • /etc/gitconfig 文件:系统中对所有用户都普遍适用的配置。若使用 git config 时用 --system 选项,读写的就是这个文件。
    • ~/.gitconfig 文件:用户目录下的配置文件只适用于该用户。若使用 git config 时用 --global 选项,读写的就是这个文件。
    • 当前项目的 Git 目录中的配置文件(也就是工作目录中的 .git/config 文件):这里的配置仅仅针对当前项目有效。每一个级别的配置都会覆盖上层的相同配置,所以 .git/config 里的配置会覆盖 /etc/gitconfig 中的同名变量。
    配置个人的用户名称和电子邮件地址:
    git config --global user.name "XXX"
    git config --global user.email "email邮箱"
    设置Git默认使用的文本编辑器, 一般可能会是 Vi 或者 Vim。如果你有其他偏好,比如 Emacs 的话,可以重新设置:
    git config --global core.editor emacs
    还有一个比较常用的是,在解决合并冲突时使用哪种差异分析工具。比如要改用 vimdiff 的话:
    git config --global merge.tool vimdiff
    git config --list 查看配置信息
    配置信息也可以在 ~/.gitconfig 或 /etc/gitconfig 看到
    工作流程
    创建仓库
    git init 在当前目录初始化仓库
    git init newrepo 使用指定目录作为Git仓库
    git clone xxxxxx.git/<url> 克隆远程仓库
    git clone <repo> <directory> 克隆到指定的目录
    基本操作
    git add filename 添加文件到staged暂存区,跟踪指定文件
    git add . 跟踪所有文件
    git remove filename 删除暂存区文件
    git status 查看上次提交后的状态
    执行 git diff 来查看执行 git status 的结果的详细信息。
    git diff 命令显示已写入缓存与已修改但尚未写入缓存的改动的区别。git diff 有两个主要的应用场景。
    • 尚未缓存的改动:git diff
    • 查看已缓存的改动: git diff --cached
    • 查看已缓存的与未缓存的所有改动:git diff HEAD
    • 显示摘要而非整个 diff:git diff --stat
    git commit -m "XXX" 提交暂存区内容
    git commit --amend 修改最后一次提交
    git commit -am "XXX" 直接提交working区域内容到history区域
    git reset HEAD 取消已缓存的内容,即将缓存区恢复为我们做出修改之前的样子,仅改变暂存区,不改变工作区
    git reset HEAD -- filename 取消已缓存的指定文件
    git reset --hard HEAD 撤销工作区所有未提交的修改
    git rm filename 将文件从缓存区中移除,默认将文件从缓存区和你的硬盘中(工作目录)删除
    git rm --cached filename 仅删除缓存区的文件
    git mv filenameA filenameB 文件重命名
    git revert <commit> 撤销指定的提交
    分支管理
    git branch 列出所有branch
    git branch branchname 创建新分支
    git branch -d branchname 删除分支
    git checkout branchname 切换到指定分支
    git checkout -b branchname 创建并切换到新分支
    git merge branchname 将分支branchname合并到当前分支
    git rebase branchname 衍合指定分支到当前分支
    git checkout filename 从staged区域提取文件覆盖working区域
    git reset filename 从history区域提取文件覆盖staged区域
    git checkout HEAD filename 从history提取文件覆盖working区域
    查看提交历史
    git log 查看历史记录
    git log -p filename 查看指定文件的提交记录
    git blame filename 以列表方式查看
    git log --graph 开启拓扑图选项
    git log --reverse 逆向显示
    git log --stat #查看提交统计信息
    git log --author=WilliamWanCN 查看指定用户的提交日志
    git log --oneline --before={3.weeks.ago} --after={2010-04-18} --no-merges 指定日期查看,--no-merges 隐藏合并提交
    标签
    git tag <tagname> 创建轻量标签
    git tag -a <tagname> -m "标签注解" 创建附注标签
    git tag -d <tagname> 删除标签
    git tag 查看所有标签
    远程仓库
    git remote 查看当前配置的远程仓库
    git remote -v 列出详细信息
    git remote show <remote> 查看指定远程版本库信息
    git remote add <remote> <url> 添加远程版本库
    git fetch 从远程仓库下载新分支与数据,执行完后需要执行git merge 远程分支到你所在的分支
    git fetch <remote> 从远程库获取代码
    git pull 从远端仓库提取数据并尝试合并到当前分支
    git pull <remote> <branch> 下载代码并快速合并
    git push [alias] [branch] 将本地 [branch] 分支推送成为 [alias] 远程仓库上的 [branch] 分支
    git push --tags 上传所有标签
    git remote rm [别名] 删除远程仓库
    暂存管理
    git stash # 暂存
    git stash list # 列出所有stash
    git stash apply # 恢复最新暂存的内容,该暂存内容还在暂存list中
    git stash pop # 恢复最新暂存的内容,该暂存内容不在暂存list中
    git stash drop # 删除暂存区
    git服务器搭建
    1.安装git
    安装完git后创建git用户
    2.创建证书登录
    cd /home/git/ mkdir .ssh chmod 700 .ssh touch .ssh/authorized_keys chmod 600 .ssh/authorized_keys
    将客户机的公钥导入到authorized_keys
    3.初始化仓库
    cd /home mkdir gitrepo chown git:git gitrepo/ cd gitrepo git init first.git
    将仓库属性改为git
    chown -R git:git first.git
    4.克隆仓库
    登录到客户机
    git clone git@10.28.1.104:/home/gitrepo/first.git
    10.28.1.104为git服务器ip
     
  • 相关阅读:
    realsense d435i qt 测试
    realsense d435i 数据 测试
    realsense d435i测试
    ubuntu torch GPU yolov5
    IfcLayeredItem
    ubuntu大服务器 pytorch环境配置
    condarc内容
    realsense point cloud
    yolov5 环境配置
    pip error
  • 原文地址:https://www.cnblogs.com/williamwan/p/10388701.html
Copyright © 2020-2023  润新知