Git 快速入门

321 阅读5分钟

git 分布式管理工具

在 Windows 上安装

在 Windows 上安装 Git 的方法如下:

  • 使用官方版本安装

官方版本可以在 Git 官方网站下载。 打开 git-scm.com/download/wi…

windows git 下载

要注意这是一个名为 Git for Windows 的项目(也叫做 msysGit),和 Git 是分别独立的项目;更多信息请访问 msysgit.github.io/。

下载完成后,按照提示进行安装即可。改变安装路径即可 其他next 安装完 Git 之后,要做的第一件事就是设置你的用户名和邮件地址。 这一点很重要,因为每一个 Git 提交都会使用这些信息,它们会写入到你的每一次提交中,不可更改:

安装完成后就会多出这些:

image.png

image.png

git bash是进入命令窗口

image.png

你是在那个目录右键进入得 就在那个目录下 这个目录里使用Linux的命令

常用的Linux命令

平时一定要多使用这些基础的命令!

1)、cd : 改变目录。

2)、cd . . 回退到上一个目录,直接cd进入默认目录

3)、pwd : 显示当前所在的目录路径。

4)、ls(ll):  都是列出当前目录中的所有文件,只不过ll(两个ll)列出的内容更为详细。

5)、touch : 新建一个文件 如 touch index.js 就会在当前目录下新建一个index.js文件。

6)、rm:  删除一个文件, rm index.js 就会把index.js文件删除。

7)、mkdir:  新建一个目录,就是新建一个文件夹。

8)、rm -r :  删除一个文件夹, rm -r src 删除src目录

rm -rf / 切勿在Linux中尝试!删除电脑中全部文件!

9)、mv 移动文件, mv index.html src index.html 是我们要移动的文件, src 是目标文件夹,当然, 这样写,必须保证文件和目标文件夹在同一目录下。

10)、reset 重新初始化终端/清屏。

11)、clear 清屏。

12)、history 查看命令历史。

13)、help 帮助。

14)、exit 退出。

15)、#表示注释

  • git 配置所有配置 其实都保存在本地 全局配置文件位置 image.png 当前用户配置文件位置 image.png 如果想要检查你的配置,可以使用 git config --list 命令来列出所有 Git 当时能找到的配置。

image.png 你可能会看到重复的变量名,因为 Git 会从不同的文件中读取同一个配置(例如:/etc/gitconfig~/.gitconfig)。 这种情况下,Git 会使用它找到的每一个变量的最后一个配置。

你可以通过输入 git config <key>: 来检查 Git 的某一项配置,例如:

$ git config user.name
任毳毳

设置配置文件

$ git config --global user.name "李老师"
$ git config --global user.email li@csdn.net

image.png


git 搭建仓库

本地仓库搭建

  • 创建目录
$ mkdir learning-git
$ cd learning-git
$ pwd
/Users/xxm/learning-git
  • 初始化仓库
$ git init
Initialized empty Git repository in /Users/xxm/learning-git/.git/

瞬间 Git 就把仓库建好了,而且告诉你是一个空的仓库(empty Git repository),同时在当前目录下多了一个.git的目录,这个目录是 Git 来跟踪管理版本库的,如果你没有看到 .git 目录,那是因为这个目录默认是隐藏的,用ls -ah命令就可以看到了。

克隆现有的仓库

当你执行 git clone 命令的时候,默认配置下远程 Git 仓库中的每一个文件的每一个版本都将被拉取下来。

克隆仓库的命令是 git clone <url> 。 比如,要克隆 Git 的链接库 libgit2,可以用下面的命令:

文件名是help-docs
$ git clone https://codechina.csdn.net/codechina/help-docs
自己建立别名
$ git clone https://codechina.csdn.net/codechina/help-docs mydocs

image.png

  • 创建read.txt 文件 使用 get add 文件名 添加到仓库 image.png 第二步,用命令git commit告诉 Git,把文件提交到仓库: 这里简单解释一下git commit命令,-m后面输入的是本次提交的说明,可以输入任意内容,当然最好是有意义的,这样你就能从历史记录里方便地找到改动记录。 image.png git commit命令执行成功后会告诉你:
  1. file changed:1个文件被改动(我们新添加的readme.txt文件)
  2. insertions:插入了两行内容(readme.txt有两行内容) 为什么 Git 添加文件需要add,commit一共两步呢?因为commit可以一次提交很多文件,所以你可以多次add不同的文件,比如:
$ git add file1.txt
$ git add file2.txt file3.txt
$ git commit -m "add 3 files."
  • 修改文件 查看仓库状态 git status

image.png git status命令可以让我们时刻掌握仓库当前的状态,上面的命令输出告诉我们,read.txt被修改过了,但还没有准备提交的修改。

  • get diff 文件名 查看修改记录 image.png
  • git log 查看提交记录

image.png

  • git reset 返回之前版本

image.png 首先,Git 必须知道当前版本是哪个版本,在 Git 中,用HEAD表示当前版本,也就是最新的提交e55063a,上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100 文件内容回到上一个版本

image.png

  • git reflog 查看操作记录

image.png

  • git reset --hard “版本名称” 切换到最新 版本

image.png 文件回到原来 image.png

  • 小结

  • 场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file

  • 场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD <file>,就回到了场景1,第二步按场景1操作

  • 场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,可以用命令git reset --hard commit_id,不过前提是没有推送到远程库

git 分支管理

创建分支

$ git checkout -b dev
Switched to a new branch 'dev'

git checkout命令加上-b参数表示创建并切换,相当于以下两条命令:

$ git branch dev
$ git checkout dev
Switched to branch 'dev'

image.png

git branch命令查看当前分支:

$ git branch
* dev
  master

git branch命令会列出所有分支,当前分支前面会标一个*

  • git checkout master 切换分支 到master
  • git merge dev 合并分支 dev
  • git branch -d dev 删除分支 只剩下master 分支

image.png

创建并切换到新的dev分支,可以使用:

$ git switch -c dev

直接切换到已有的master分支,可以使用:

$ git switch master

使用新的git switch命令,比git checkout要更容易理解。

通常,合并分支时,如果可能,Git 会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息。

如果要强制禁用Fast forward模式,Git 就会在merge生成一个新的commit,这样,从分支历史上就可以看出分支信息。

下面我们看一看--no-ff方式的git merge

git merge --no-ff -m "merge with no-ff" dev 合并时添加 --no-ff参数

git log --graph --pretty=oneline --abbrev-commit 查看分支历史

image.png

  • git分支中常用指令:
# 列出所有本地分支git branch
# 列出所有远程分支git branch -r
# 新建一个分支,但依然停留在当前分支git branch [branch-name]
# 新建一个分支,并切换到该分支git checkout -b [branch]
# 合并指定分支到当前分支$ git merge [branch]
# 删除分支$ git branch -d [branch-name]
# 删除远程分支$ git push origin --delete [branch-name]$ git branch -dr [remote/branch]

在gitee(国内码云 速度快)上创建远程仓库并集成IDEA

设置SHH免密提交 打开git命令窗口 输入 ssh-keygen 则会在用户目录下生成.ssh文件夹

image.png 然后注册gitee 并打开设置找的SSH

image.png 打开刚刚.ssh下的id_rsa.pub文件 复制其内容 粘贴到gitee SSH设置的key 文本框 随便起一个title 然后保存

创建一个远程仓库 image.png 复制远程地址 拉取项目

image.png

image.png 把拉去的文件复制到你自己的项目下 打开项目 image.png 发现idea项目多了这些

image.png 在命令行 通过git命令进行 添加 提交 远程提交 image.png 添加成功到远程仓库 image.png

推荐一下狂神说的git教程感觉讲的非常好地址