Git

1. 常用配置

# 设置为对文件名大小写敏感
> git config core.ignorecase false   #默认值是 true
1
2

2. 日志及回退

# 显示漂亮的历史(只会显示当前的 branch 的历史)
> git log --pretty=oneline --graph --abbrev-commit

> git log --pretty=oneline
> git reset --hard  27ea09c21cf6caf6f7f81f1fb1b92e86479d4082  #回退到某一版本

# 查看某个文件的日志
> git log --follow -p -- path/file-name

# 查询日志及修改的文件
> git log --name
> git log --stat
> git log --stat --pretty=format:<branch-name>
> git log --stat --pretty=short --graph
1
2
3
4
5
6
7
8
9
10
11
12
13
14

3. 分支

# 创建分支
> git branch e2e-test       # 创建 e2e-test 分支
> git checkout e2e-test     # 切换到 e2e-test 分支
> git checkout -b e2e-test  # 等价于上面两步(创建+切换)。

# 重命名某分支
> git branch -m featureA featureB    # 先将本地分支 featureA 重命名为 featureB,同时将切换到此新的分支下
> git branch
   * featureB
     master
> git push origin --delete featureA  # 删除远程的 featureA 分支
> git push origin featureB           # 将当前分支 push 到远程 featureB 分支
> git branch --unset-upstream

# 分支对比
> git diff branch1 branch2
> git difftool branch1 branch2       # 图形化比较,集成 vimdiff 对比,更直观

# 先对比 branch2, 再合并 branch2 到当前的分支
> git diff branch2
> git merge branch2

# 列表所有的 branch
> git branch -a     # shows all local and remote branches
> git branch -r     # shows only remote branches

# 删除分支
> gir branch -d <branch-name>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

4. 修改 URL

$ git remote -v
origin	https://github.com/hw712/old.git (fetch)
origin	https://github.com/hw712/old.git (push)
$ git remote set-url origin https://github.com/hw712/new.git
$ git remote -v
origin	https://github.com/hw712/new.git (fetch)
origin	https://github.com/hw712/new.git (push)
1
2
3
4
5
6
7

5. 服务端创建 Git 库

# Debian Linux
$ sudo apt-get update
$ sudo apt-get install git-core

# 创建 repository 目录并初始化
$ mkdir -p /home/henry/my-git-repository.git
$ cd /home/henry/my-git-repository.git
$ git init --bare

# 添加支持的用户 henry
henry@debian:~$ sudo usermod -a -G ssh henry

# 到客户端,将库 clone 到本地
$ git clone ssh://henry@my.linux.server.ip/home/henry/my-git-repository.git
1
2
3
4
5
6
7
8
9
10
11
12
13
14

6. 保存密码

# 设置后再次更新,按提示输入密码后,就会被保存起来了。
$ git config credential.helper store
1
2

7. 恢复还原

$ git add -A
$ git reset
1
2

8. 迁移仓库

  • 创建一个新的空仓库,参考 Step 5

  • 修改本地库的 URL 为新的仓库地址,参考 Step 4,然后直接推送上去即可。

    • 历史提交记录将会一起保存
最近更新: 7/12/2019, 2:52:05 PM