Git使用学习

发布 : 2019-01-30 分类 : 运维 浏览 :

git常用命令

git全局设置

1
2
$ git config --global user.name "Administrator"
$ git config --global user.email "admin@example.com"

创建一个新的项目并提交

1
2
3
4
5
6
7
8
9
$ git clone http://192.168.25.128/root/test.git   # 克隆一个现有项目
$ cd test
$ touch README.md
$ git add README.md # 将readme纳入版本管理(跟踪readme文件)
$ git commit -m "add README" # 提交
$ git push -u origin master # 推送到远程仓库
$ git status # 查看目录下的文件状态
# 位于分支 master
无文件要提交,干净的工作区

查看文件与上次提交后的快照之间的差异
ps:使用–cache参数可以查看暂存后的差异(即git add 后状态)

1
2
3
4
5
6
7
8
$ git diff README.md 
diff --git a/README.md b/README.md
index 9ff86f9..d8e6881 100644
--- a/README.md
+++ b/README.md
@@ -1 +1,2 @@
# 这是一个测试文件
+# 测试diff

删除文件操作

1
git rm --cached README.md      # 使用"--cached"是仅删除暂存状态,文件还保留,"-f"强制删除,原文件也会被删除

查看提交历史
PS:

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
29
30
31
32
33
34
35
36
37
$ git log 
commit c2e6096acd805f0939ee54dff08a040c2516862a # sha1校验
Author: wgy <389341277@qq.com> # 操作员,邮箱
Date: Wed Dec 14 19:04:48 2016 +0800 # 日期

commit test! # 提交时的说明

commit e25376f329c1a3eca28580a006f88f5dbfae0804
Author: wgy <389341277@qq.com>
Date: Wed Dec 14 19:01:32 2016 +0800

修改Readme

commit e24559f640e431cd807371b7090d9cb8375a685f
Author: wgy <389341277@qq.com>
Date: Wed Dec 14 17:45:15 2016 +0800

add README


-p 参数显示每次提交的内容的差异
-1 只显示最近一次的修改内容

# git log -p -1
commit c2e6096acd805f0939ee54dff08a040c2516862a
Author: wgy <389341277@qq.com>
Date: Wed Dec 14 19:04:48 2016 +0800

commit test!

diff --git a/Readme.md b/Readme.md
deleted file mode 100644
index 8368fa7..0000000
--- a/Readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# This is a test file

分支

分支的新建与切换

1
2
3
4
5
6
7
# 新建iss53分支并切换到分支内
$ git checkout -b iss53
切换到一个新分支 'iss53'

# 使用以下两条命令与上述结果一样
$ git branch iss53
$ git checkout iss53

分支合并

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$ git checkout master               # 切换到master分支
切换到分支 'master'
您的分支领先 'origin/master' 共 1 个提交。
(使用 "git push" 来发布您的本地提交)
$ git merge iss53 # 使用merge合并分支
更新 32c73d2..2be4584
Fast-forward
index.html | 1 +
test.sh | 1 +
2 files changed, 2 insertions(+)
create mode 100644 index.html
```
合并时出现了“Fast forward”的提示。由于当前 master 分支所在的提交对象是要并入的 hotfix 分支的直接上游,Git 只需把 master 分支指针直接右移。换句话说,如果顺着一个分支走下去可以到达另一个分支的话,那么 Git 在合并两者时,只会简单地把指针右移,因为这种单线的历史分支不存在任何需要解决的分歧,所以这种合并过程可以称为快进(Fast forward)


**删除分支**

$ git branch -d iss53
`

本文作者 : WGY
原文链接 : http://geeklive.cn/2019/01/30/git_learn/undefined/git_learn/
版权声明 : 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!
留下足迹