Git 常用命令速记

本贴最后更新于 2777 天前,其中的信息可能已经物是人非

生成 SSH Key

ssh-keygen -t rsa -C "youremail@example.com"
  • 在用户主目录里找到.ssh 目录
  • 将 id_rsa.pub 中的数据放到服务器的.ssh 目录下

克隆远程仓库

git clone https/git

查看所有的版本提交记录

git log (--pretty=oneline)

## 查看版本回退/提交信息

git reflog


## 本地版本仓库的版本回退

git reset --hard 11111


## 工作区 与 暂存区 与 本地版本库


*   对代码的修改是在工作区进行的;
*   git add后代码会进入暂存区
*   git commit仅会提交暂存区的代码,不会提交工作区的代码!

## 撤销工作区修改

git checkout -- 指定文件


*   若暂存区是干净的,则工作区撤销后,和之前提交的版本保持一致;
*   若暂存区已经有代码了,则工作区撤销后,和暂存区的代码保持一致。

**注意:checkout 后必须加–,否则就成切换分支命令了!**

## 撤销暂存区的修改,将暂存区的修改放回至工作区

git reset HEAD 指定文件


## 创建分支

git branch 新分支名


## 切换分支

git checkout 指定分支名


## 查看所有分支

git branch

  • dev
    master

## 合并分支

1.  切换到master分支上:

    ```
    git checkout master
    ```

2.  将指定分支合并至master分支

    ```
    git merge dev
    ```

## 删除指定分支

git branch -d 分支名


## 分支管理策略

*   master分支应该是非常稳定的,也就是仅用来发布新版本,平时不能在上面干活;
*   干活都在dev分支上,每个人都有自己的dev分支;

## Bug分支

当被分配到bug时,需要创建一个新分支,在上面进行修改。但此时可能还在自己的dev分支上开发新功能,此时需要将当前工作区存起来,在bug修复完后再还原。

1.  存储当前工作区

    ```
    git stash
    ```

2.  切回master分支,基于master分支创建新的bug分支

    ```
    git checkout master
    git checkout -b issue-111
    ```

3.  在新分支上修改bug

4.  切回master分支,合并bug分支

    ```
    git checkout master
    git merge issue-111
    ```

5.  删除bug分支

    ```
    git branch -d issue-101
    ```

6.  查看所有保存的工作区

    ```
    git stash list
    ```

7.  还原工作区

    1.  使用apply还原指定stash,再使用drop删除

        ```
        git stash apply xxx
        git stash drop xxx
        ```

    2.  使用pop还原并删除第一个stash

        ```
        git stash pop
        ```
  • Git

    Git 是 Linux Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

    209 引用 • 358 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...