后端实践--git的简单使用 青训营

76 阅读4分钟

后端实践--git的简单使用

这篇博客主要整理了一下git的常用命令,主要分为三个部分:一是版本管理命令,二是分支管理命令,三是远程协作开发命令。其实很多命令都是看到名字就大概知道其主要作用了,多敲几遍就熟悉了。

1、版本管理命令(增、删、改、版本回退)

  1. git init 这个命令是在本地当前目录下创建一个仓库,执行完成当前目录下会有一个.git的隐藏文件。

  2. git config 该命令可以用于配置本地仓库的各类信息。如:

    • git config [--global] user.name "your name"配置用户名称
    • git config [--global] user.email "your email" 配置用户邮箱

    其中添加可选项--global是指该配置在本机都有效。

  3. git add 这个命令是把特定或全部工作区的修改添加到==暂存区(stage)==,-f选项强制添加。

  4. git commit 该命令将暂存区的特定或所有修改添加到==版本库==,这时我们的工作区代码就可以被Git管理了。==注意==这个命令有个 -m "message" 选项,一定要带上,且 message 内容要好好写,注明此次提交有哪些更改,方便日后查看!

  5. git log 查看提交记录。一些美化输出的选项:--pretty=onyline--abbrev-commit--graph 可以输出分支图。

  6. git cat-file 后接 commit id 可以查看这次 commit 的详细信息,并且通过输出内容可以一直回溯到以前的提交,还可以通过输出信息查看 project 里的内容。-p 选项可以美化输出。

  7. git status 查看仓库当前状态,也就是上次 commit 后是否有对工作区的内容做修改。

  8. git diff [file] 显示工作区和暂存区 file 文件的差异,也就是这个 file里写了那些内容还没 add

  9. git reset [--soft | --mixed | hard] [HEAD] 进行版本回退。--soft 只将版本库回退到指定版本,而工作区和暂存区不变;--mixed 将版本库和暂存区都会退到指定版本,==但是工作区内容不变==,这也是默认选项;--hard 就是版本库、工作区、暂存区都回退到指定版本,==这个要慎用==,要是工作区有代码还没 commit ,那就没了!![HEAD]可以是指定 commit id,也可以是:HEAD 表示当前版本,HEAD^ 表示上一个版本,HEAD^^ 表示上上个版本,以此类推。

  10. git reflog 显示本地的 commit 命令,主要用于版本回退的时候找对应的 commit id

  11. git checkout -- [file] 使工作区的文件回到最近一次 addcommit 时的状态。==那个 -- 一定要有,不然就是另一个意思了,在分支命令中说==。

  12. git rm [file] 删除工作区和==暂存区==的文件。

2、分支管理命令(创建、切换、合并、删除)

  1. git branch [branch-name] 创建分支,不带任何参数是查看当前分支,-r 查看远程分支,-a查看所有的分支,-vv查看本地分支和远程分支的连接信息。

  2. git checkout branch-name 切换分支。可以使用 git checkout -b branch-name 创建分支并切换到 branch-name 分支。

  3. git merge branch-name 合并分支,将指定分支合并到当前分支。==注意==,默认情况下会以Fast Forward的形式合并,但是这种形式的合并我们无法查看这次修改是合并的还是commit的,所以Git建议我们不要使用这种形式!加上参数--no-ff 即可,这时也必须同时加上参数-m "message",为这次合并创建一次提交。

  4. git branch -d branch-name删除分支。

  5. git stash 该命令用于将当前工作区的信息进行存储(在.git/refs/stash),这样使得某个分支修改后但还没有 commit的信息不影响其他分支。用法如下

    • git stash 直接进行存储。
    • git stash list 查看当前有哪些存储。
    • git stash pop [stash-name] 恢复某个存储,同时删除存储。
    • git stash apply [stash-name] 恢复某个存储,但是并不删除存储。
    • git stash drop [stash-name] 删除某个存储。

3、远程协作开发命令

  1. git clone 克隆远端仓库到本地。

  2. git remote 查看远程仓库信息,-v选项可以查看更详细的。

  3. git push [remote-machine] [local-branch]:[remote-branch] 推送本地仓库内容到远端,如果当前本地分支和远端分支建立连接的话后面的信息可以省略。

  4. git pull [remote-machine] [remote-branch]:[local-branch] 拉取远端内容到本地并和本地内容合并。

  5. git check-ignore -v file-name 检查一下文件在.gitignore里的信息。

  6. git tag 查看标签信息,其他用法如下:

    • git tag tag-name 给最近一次commit打标签 tag-name
    • git tag tag-name commit-id 给特定commit打标签。
    • git tag -a tag-name -m "message" commit-id 给标签加上描述信息。
    • git tag -d tag-name 删除标签。
  7. git show tag-name 查看标签信息。

以上就是一些常用的git命令,希望能有所帮助。