zoukankan      html  css  js  c++  java
  • 【版本管理】git本地操作

    1.初始化一个Git仓库,使用git init命令。

    2.添加文件到Git仓库,分两步:

    • 第一步,使用命令git add 文件名,注意,可反复多次使用,添加多个文件;

    • 第二步,使用命令git commit -m "一些提交的说明",即可完成。

    3.查看状态

    • 要随时掌握工作区的状态,使用git status命令。

    • 如果git status告诉你有文件被修改过,用git diff可以查看修改内容。

    4.版本回退

    • 查看提交日志git loggit log命令显示从近到远的提交日志。

       如果嫌输出信息太多,看得眼花缭乱的,可以试试加上 --pretty=oneline参数:git log --pretty=oneline 

    •首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是新的 提交“ 3628164...882e1e0”(注意我的提交ID和你的肯定不一样),上一个版本就是 HEAD^,上上一个版本就是HEAD^^,当然往上100 个版本写100个^比较容易数不过来, 所以写成HEAD~100。

    •使用 git reset --hard HEAD^ 把版本回退到上一个版本。

       不过回退后 git log 再查看提交时,回退前的那个版本消失了。此时如果想恢复到该版本,需要执行 git reset --hard 3628164 既需要知道该版本的commit id前6位或7位。如果你忘记了该版本的commit id,使用git reflog来查看每次提交的commit id。

    tips: cat 文件名 查看文件。

    其它说明:

    前面讲了我们把文件往Git版本库里添加的时候,是分两步执行的:

    第一步是用“git add”把文件添加进去,实际上就是把工作区文件修改添加到暂存区;每次修改,如果不add到暂存区,那就不会加 到commit中

    第二步是用“git commit”提交更改,实际上就是把暂存区的所有内容提交到当前分支。

    git diff HEAD -- 文件名 命令可以查看工作区和版本库里面新版本的区别。

    撤销修改

    还没有把修改后的文件提交到暂存区时

           git checkout -- 文件名(git checkout -- file命令中的“--”很重要,没有“--”,就变成了“创建一个新分支”的命令)

          命令git checkout -- 文件名 意思就是,把readme.txt文件在工作区的修改全部撤销。

          这里有两种情况:一种是文件自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一 样的状态; 一种是文件已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂 区后的状态。 总之,就是让这个文件回到最近一次git commit或git add时的状态。

    已经把修改后的文件提交到暂存区时

        git reset HEAD 文件名

        git reset 命令既可以回退版本,也可以把暂存区的修改回退到工作区。当我们用HEAD时, 表示最新的版本。再用git status查看一下,现在暂存区是干净的,工作区有修改:再用 git checkout -- 文件名 丢弃工作区的修改。

    删除文件

    在删除某个文件后,工作区和版本库就不一致了,git status命令会立刻告诉你哪些文件被删除了: 

    现在你有两个选择,一是确实要从版本库中删除该文件,那就用命令git rm 删掉,并且 commit:git rm 文件名  ,再git commit -m "删除了XX文件"。

    另一种情况是删错了,因为版本库里还有呢,所以可以很轻松地把误删的文件恢复到新版本: $ git checkout -- 文件名。

    git checkout其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。

  • 相关阅读:
    第几天?
    农历02__资料
    农历01
    VC6_预编译头
    QWebEngine_C++_交互
    Qt570_CentOS64x64_02
    Qt570_CentOS64x64_01
    QWebEngineView_CssVariables
    Windows__书
    Win7SDK
  • 原文地址:https://www.cnblogs.com/zachary93/p/6137133.html
Copyright © 2011-2022 走看看