Git基础

Posted pycrab

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Git基础相关的知识,希望对你有一定的参考价值。

Git简介

  1. 开源的分布式版本控制系统,高效、简单、完全分布式。
  2. 本地执行操作,离线的优势--快。
  3. 每次你提交更新,或在 Git中保存项目状态时,它主要对当时的全部文件制作一个快 照并保存这个快照的索引。
  4. 为了高效,如果文件没有修改,Git 不再重新存储该文件,而是只 保留一个链接指向之前存储的文件。
  5. git文件的三种状态:已修改(modified)、已暂存(staged)、已提交(commited),对应三个工作区域:工作目录、暂存区域、Git仓库。
  6. 基本的 Git 工作流程如下:
    • 在工作目录中修改文件
    • 暂存文件,将文件的快照放入暂存区域
    • 提交更新,找到暂存区域的文件,将快照永久性存储到Git仓库目录

Git安装和配置

  1. 下载安装对应系统的Git
  2. 配置Git每次提交对应的用户信息

    $ git config --global user.name "John Doe"

    $ git config --global user.email [email protected]

创建Git仓库

  1. 方法1:创建空文件夹,在其中执行git init命令,之后将项目创建在此文件夹中,新的文件即可被git跟踪。
  2. 方法2:克隆已有的仓库,复制项目地址,执行以下命令$ git clone https://github.com/libgit2/libgit2 rename,rename为别名,不写默认文件夹名为项目名。

记录每次更新

  1. 文件的状态变化如下:
    技术分享图片
  2. 创建.gitignore文件来忽略日志等不必要的文件
    cat .gitignore
    *.log
  3. 检查当前文件状态,是否都已经提交到暂存区,加-s参数可以输出简要信息
    git status
  4. 跟踪已修改文件并提交到暂存区,参数可以为一个路径,表示其下的所有文件
    git add name
  5. 查看尚未暂存的改动行,如果想查看暂存区域将要提交的内容,加--staged参数
    git diff
  6. 提交更新,-m参数填写备注,-a参数将所有跟踪的文件暂存起来一起提交
    git commit -m "提交备注信息"
  7. 撤销之前的提交,使用新的提交,这样尽显示一次提交
    git commit --amend

查看提交历史

  1. 显示每次提交的内容差异
    git log -p
  2. 使用-n参数显示最近的n次提交
  3. 查看每次提交的简略信息
    git log --stat
  4. 指定不同方式展示提交历史,展示一行oneline或者shortfullfuller
    git log --pretty=oneline
  5. 定制显示格式
    $ git log --pretty=format:"%h - %an, %ar : %s"

远程仓库的使用

  1. 添加远程仓库
    • 克隆远程仓库,执行默认操作
      $ git clone https://github.com/schacon/ticgit
    • 明确的添加远程仓库,name为你自己给服务器起的名字
      git remote add name https://github.com/paulboone/ticgit
    • 重命名远程仓库
      git remote rename origin newname
    • 移除一个远程仓库
      git remote rm origin
  2. 查看当前已配置的远程仓库服务器
    • $git remote,默认命名为origin
    • -v选项可以查看服务器URL
    • 查看一个远程仓库的更多信息
      git remote show [remote-name]
  3. 从远程仓库抓取与拉取
    • 抓取但不合并分支
      git fetch [remote-name]
      如果是克隆的仓库,执行git fetch origin可以抓取最新推送的工作
    • 拉取并自动合并到当前分支
      git pull
  4. 推送到远程仓库
    • 将master分支推送到origin服务器,一般需要先执行拉取操作后推送
      git push origin master
      默认推送到远程仓库自动创建的master分支,可以指定其创建新的分支,使用git push origin master:newbr

标签的使用

  1. 列出标签
    git tag
  2. 使用-a参数创建标签,-m参数添加附注信息
    git tag -a v1.0 -m "my v1.0"
  3. 查看标签内容
    git show v1.0
  4. 共享标签
    git push origin --tags
    默认不会将标签推送到远程服务器上,需要手动添加标签名推送,--tags为推送所有远程仓库服务器没有的标签。

以上是关于Git基础的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段15——git命令操作一个完整流程

如何管理在每个 git 版本中添加私有代码片段?

使用 Git 来管理 Xcode 中的代码片段

markdown Git代码片段

GitGit 分支管理 ( 克隆远程分支 | 克隆 master 分支 git clone | 查看远程分支 git branch -a | 克隆远程分支 git checkout -b )(代码片段

GitGit 分支管理 ( 克隆远程分支 | 克隆 master 分支 git clone | 查看远程分支 git branch -a | 克隆远程分支 git checkout -b )(代码片段