Git-最好的代码管理工具-使用指南

笔记
给来问我的同学写的Git工具简明教程

Git 简明教程

这是一个简单粗暴的git简明教程,只是提供简单的使用方法参考,基本原理建议看官方文档或者菜鸟教程

Git软件建议从Git 官网下载并安装,记得要把git路径添加到Path

提前说明,本人截止202-06-02日对git底层原理尚且一窍不通,只是搬砖搬多了熟练了罢了

获取与创建项目

git init

git init 在目录中创建新的 Git 仓库。 你可以在任何时候、任何目录中这么做,完全是本地化的。
在目录中执行 git init,就可以创建一个 Git 仓库了。

git clone [目标url] [文件夹名(可选)]

执行该命令后,会在当前目录下创建一个名为目标url仓库名称的目录,其中包含一个**.git**的目录(在window平台上一般是隐藏文件夹),用于保存下载下来的所有版本记录。

例子如下:

git clone https://github.com/Kingfish404/DataStructrue-Algorithm.git

如果要自己定义要新建的项目目录名称,可以在上面的命令末尾指定新的名字.

从远程仓库拉取代码

git pull

使用git pull命令可以从远程仓库拉去更新

如果你本地有未提交的更改,可能会有错误提示信息,那么这时候建议你执行以下命令,提交当前更改再拉去远程仓库并合并更改

git add *
git commit -m "你命名的提交的值"
git pull

推送本地代码到远程仓库

git add

git add 命令可将该文件添加到缓存,一般为了方便常用

git add *  # add后面接需要提交的文件,如果为*则默认全选

git commit

使用git add命令将想要保存的的内容写入缓存区, 而执行git commit将缓存区内容添加到仓库中。

例子:

git commit -m "你命名的提交的值"   # -m 后面为提交的名称,为可选参数

重做提交

清除错误和构建用于替换的历史

$ git reset [commit]

撤销所有 [commit] 后的的提交,在本地保存更改

$ git reset --hard [commit]

放弃所有历史,改回指定提交。

git push

通过git push命令可以将本地已经提交(commit)的更改推送到远程仓库,这个仓库的地址在.git目录下FETCH_HEAD文件中有记录

结束了一天的工作,最喜欢的三连如下:

git add *
git commit -m "daily"   # -m 后面为提交的名称,为可选参数
git push

分支

分支是使用 Git 工作的一个重要部分。你做的任何提交都会发生在当前“checked out”到的分支上。使用 git status 查看那是哪个分支。

$ git branch [branch-name]

创建一个新分支

$ git checkout [branch-name]

切换到指定分支并更新工作目录(working directory)

$ git merge [branch]

将指定分支的历史合并到当前分支。这通常在拉取请求(PR)中完成,但也是一个重要的 Git 操作。

$ git branch -d [branch-name]

删除指定分支

以上就是最常用的git命令,更多的操作可以直接在命令行输入git可以查看自带的说明,或者去下面的文档进行学习.

usage: git [--version] [--help] [-C <path>] [-c <name>=<value>]
           [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
           [-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare]
           [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
           <command> [<args>]
...省略...
See 'git help git' for an overview of the system.

术语表

  • git: 一个开源的分布式版本控制系统
  • GitHub: 一个托管和协作管理 Git 仓库的平台
  • commit 提交: 一个 Git 对象,是你整个仓库的快照的哈希值
  • branch 分支: 一个轻型可移动的 commit 指针
  • clone: 一个仓库的本地版本,包含所有提交和分支
  • remote 远端: 一个 GitHub 上的公共仓库,所有小组成员通过它来交换修改
  • fork: 一个属于另一用户的 GitHub 上的仓库的副本
  • pull request 拉取请求: 一处用于比较和讨论分支上引入的差异,且具有评审、评论、集成测试等功能的地方
  • HEAD: 代表你当前的工作目录。使用git checkout 可移动 HEAD指针到不同的分支、标记(tags)或提交

最后更新于: 2020-07-06

相关资源