Git教程

对日常Git的使用进行归纳和总结。

安装Git

1
sudo apt install git

如果需要用Git管理大文件,则需安装git-lfs:

1
2
3
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash
sudo apt-get install git-lfs
git lfs install

创建仓库(repository)

通过git init命令就可以把一个目录变成Git管理的仓库:

1
2
# 下面命令执行完成后会生成一个.git文件夹
git init

添加文件到Git仓库分为三步:

  1. 使用命令git add <file>将文件从工作区添加到暂存区。
  2. 使用命令git commit -m <message>将文件从暂存区提交到本地仓库。
  3. 使用命令git push将文件从本地仓库推送到远程仓库。

git pull可拉取最新的远程仓库。 如果git pull提示no tracking information,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream-to <branch-name> origin/<branch-name>

查看仓库

  1. 使用git status命令可以查看当前仓库的状态。
  2. 使用git diff <file>可以查看文件内容的修改。
  3. 使用git log查看历史修改记录和commit id
  4. 使用git reglog查看命令记录。
  5. 使用git remote -v可以查看远程仓库的信息。

版本回退

在Git中,用HEAD表示当前的版本,上一个版本是HEAD^,上上个版本是HEAD^^,往上100个版本是HEAD~100。 当然,也可以用commit id来表示版本。

我们要把当前版本回退到上一个版本,就可以使用git reset命令:

1
git reset --hard HEAD^

或者使用commit id

1
git reset --hard <commit id>

撤销修改

工作区内容的修改

当修改了工作区的内容,但还没有使用git add提交时,可以使用git restore <文件>丢弃工作区的改动。

暂存区内容的修改

当修改了工作区的内容,且使用git add将修改提交到暂存区后,可以使用git restore --staged <文件>以取消暂存,将修改回退到工作区。

本地仓库的修改

当修改了工作区的内容,且使用git addgit commit将修改提交到本地仓库之后,可以使用版本回退中的方法回到修改之前。

分支管理

查看分支

1
git branch

创建分支

1
2
3
# 创建dev分支,并切换到该分支
git branch dev
git checkout dev

合并分支

1
2
# 将dev分支合并到当前分支
git merge dev

删除分支

1
git branch -d dev