zoukankan      html  css  js  c++  java
  • Git 基本操作

    git init

      Git 使用 git init 命令来初始化一个 Git 仓库,Git 的很多命令都需要在 Git 的仓库中运行,所以 git init 是使用 Git 的第一个命令。
      在执行完成 git init 命令后,Git 仓库会生成一个 .git 目录,该目录包含了资源的所有元数据,其他的项目目录保持不变。

    • 使用当前目录作为 Git 仓库:git init,该命令执行完后会在当前目录生成一个 .git 目录
    • 使用指定的目录作为 Git 仓库:git init newrepo,初始化后,会在 newrepo 目录下出现一个名为 .git 的目录。
    $ mkdir test
    $ cd test/
    $ git init
    Initialized empty Git repository in D:/Workspace/Git/test/.git/
    

    git clone

      使用 git clone 从现有的 Git 仓库中拷贝项目。克隆仓库的命令格式为:git clone <repo>,如果需要克隆到指定的目录,可以使用以下命令格式:git clone <repo> <directory>。(repo 指 Git 仓库,directory 指本地目录)
      默认情况下,Git 会按照你提供的 URL 所指示的项目的名称创建你的本地项目目录。通常就是该 URL 最后一个/之后的项目名称,如果你想要一个不一样的名字,你可以在该命令后加上你想要的名称。

    $ git clone git@github.com:lucky-zhangcd/hello.git
    Cloning into 'hello'...
    remote: Counting objects: 12, done.
    remote: Compressing objects: 100% (6/6), done.
    remote: Total 12 (delta 0), reused 3 (delta 0), pack-reused 0
    Receiving objects: 100% (12/12), 2.12 KiB | 310.00 KiB/s, done.
    

    git add

      git add 命令可以将该文件添加到缓存。

    $ touch hello.py
    $ ls
    hello.py  helloworld.py  README.md
    $ git status -s
    ?? hello.py
    

    git status

      git status 命令用于查看项目的当前状态。在使用该命令时加 -s 参数,可以获得简短的结果输出。如果没有加该参数则会详细输出内容。

    $ git add hello.py
    $ git status -s
    A  hello.py
    $ git status
    On branch master
    Your branch is up to date with 'origin/master'.
    
    Changes to be committed:
          (use "git reset HEAD <file>..." to unstage)
    
                new file:   hello.py
    

    git diff

      git diff 查看执行 git status 的结果的详细信息。
      git diff 命令显示已写入缓存与已修改但尚未写入缓存的改动的区别。git diff 有两个主要的应用场景。

    • 尚未缓存的改动:git diff
    • 查看已缓存的改动:git diff --cached
    • 查看已缓存的与未缓存的所有改动:git diff HEAD
    • 显示摘要而非整个diff:git diff --stat
        git status 显示上次提交更新后的更改或者写入缓存的改动,而 git diff 一行一行地显示这些改动的具体信息。

    git commit

      使用 git add 命令将想要快照的内容吸入缓存区,而执行 git commit 将缓存区内容添加到仓库中。
      在 git commit 中使用 -m 选项以在命令行中提交注释。如果没有设置 -m 选项,Git 会尝试为你打开一个编辑器以填写提交信息。


    git reset HEAD

      git reset HEAD 命令用于取消已缓存的内容。git reset HEAD 以取消之前 git add 添加,但不希望包含在下一提交快照中的缓存。


    git rm

      如果只是简单地从工作目录中手工删除文件,运行 git status 时就会有“Changes not staged for commit”的提示。

    • 要从 Git 中移除某个文件,就必须要从已跟踪文件清单中移除,然后提交。可以用以下命令完成此项工作:git rm <file>
    • 如果删除之前修改过并且已经提放到暂存区域的话,则必须要用强制删除选项 -f:git rm -f <file>
    • 如果把文件从暂存区域移除,但仍然希望保留在当前工作目录中,换句话说,仅是从跟踪清单中删除,使用 --cached 选项即可:git rm -- cached <file>
    • 可以递归删除,即如果后面跟的是一个目录作为参数,则会递归删除整个目录中的所有子目录和文件:git rm -r

    git mv

      git mv 命令用于移动或重命名一个文件、目录、软连接。

  • 相关阅读:
    C++Josephus问题
    C++背包示例
    C++1000以内的质数
    as3+asp+access编码
    fb设置flashplayer
    三视图示例
    正确实现 IDisposable 接口
    .net垃圾回收和CLR 4.0对垃圾回收所做的改进之二
    .net垃圾回收和CLR 4.0对垃圾回收所做的改进之三
    CLR 全面透彻解析:大型对象堆揭秘
  • 原文地址:https://www.cnblogs.com/lucky-zhangcd/p/9193687.html
Copyright © 2011-2022 走看看