关于git:Git-常用命令

37次阅读

共计 2612 个字符,预计需要花费 7 分钟才能阅读完成。

最常见

# 查看 git 客户端版本
git --version

# 失去一个残缺的 git 子命令列表
git help -all

# 创立一个新的 Git 版本库
git init

# 减少该目录下的某个文件到版本库中
git add file

# 把当前目录及子目录中的文件都增加到版本库里
git add.

# 从版本库中删除文件: foo.txt; 会将文件从索引区和工作目录中都删除。git rm foo.txt
git commit -m "delete foo.txt"

# 版本库文件重命名; 把 foo.txt 改为 foo_new.txt
git mv foo.txt foo_new.txt
git commit -m "rename foo.txt to foo_new.txt"

# 显示 add 后然而没有 commit 的变更
git status


# 查看版本库里一系列独自提交的历史, 如果持续看更早的就按 "E"
git log

# 按住 Esc 间断按 2 次 大写的 "Z",就能退出以后命令

# 创立版本库正本;git clone
# 从本地的仓库 HelloWorld 创立正本 MyHelloWorld
git clone HelloWorld MyHelloWorld

# 从 Git 服务器上创立正本,如从 GitHub 的一个仓库创立正本:git clone https://github.com/kamaihamaiha/Notes MyNotes

# 创立一个 Tag(带附注的),commit_ID 在指定的提交 ID 下创立。git tag -m "Tag version 1.0" V1.0 commit_ID

配置相干命令

# 配置提交作者用户名; 也能够加上 --global 选项,用来作用域全局设置。git config user.name "张三"

# 配置提交作者邮箱
git config user.email "zhangsan@gmail.com"

# 查看整组配置文件里独特查找的所有变量的设置值
git config -l

# 只看版本库特定的设置
cat .git/config

# 移除用户名设置和邮箱设置,也能够加上 --global 选项,用来作用域全局设置。git config --unset user.name
git config --unset user.email

分支

# 查看分支
git branch      查看本地分支
git branch -r    查看近程分支
git branch -a    查看所有分支
git branch -v     查看本地分支,含 HEAD 值,提交信息。# 创立分支:hot_fix
git branch hot_fix

# 切换分支,切换到 hot_fix 分支
git checkout hot_fix

# 合并分支
①:切换到合并指标的分支 -master
git checkout master

②:执行 合并操作。把 hot_fix 合并到 master
git merge hot_fix

# 删除分支
git branch -d 分支名

# 重命名分支
第一步:重命名本地分支:1. 切换到本分支下
2. git branch -m new-name

第二步:删除近程旧分支名,而后把本地的新的分支名字推送下来:1. git push origin :old-name new-name

第三步:给本地的新名字的分支从新设置上传流。git push origin -u new-name

# 创立空白新分支
1. git branch <new_branch>
2. git checkout <new_branch>
3. git rm --cached -r .
4. git clean -f -d
5. git commit --allow-empty -m "..."
6. git push origin <new_branch>

# 在本地创立分支【关联近程分支】并切换到该分支
git checkout -b dev(本地分支名) origin/dev(近程分支名称)

# 近程仓库建了一个新分支,本地想要查出来
git remote update origin -p

log 命令

1. git log
查看提交日志

2. git log --pretty=oneline
查看提交日志,每次递交都依照一行展现

3. git log --oneline
查看提交日志,每次递交都依照一行展现,并且事实以后版本及以前的版本提交日志。其中 HEAD 的哈希值只显示前几位。4. git reflog
查看提交日志,显示提交的索引值。5. git rev-list HEAD --count
查看以后分支提交次数

6. git log --follow specify_file
查看指定文件 (specify_file) 相关联的整个历史记录

diff 命令

1. git diff
工作区和暂存区到差异, 前面能够加上文件

2. git diff --cached
历史库和暂存区到差异

查看提交

# 查看特定提交更加具体的信息,commit_ID 是具体的提交 ID
git show commit_ID

# 查看提交信息单行摘要,--more=10 是最近的 10 个提交,不加上就显示最新的提交
git show-branch --more=10

# 查看提交差别,commitA_ID 和 commitB_ID 是两次提交的 ID。git diff commitA_ID commitB_ID

reset 命令

用来进行后退和后退。
reset 三个参数:–hard, –mixed, –soft

–hard

在本地库挪动 HEAD 指针
重置缓存区
重置工作区

–mixed

在本地库挪动 HEAD 指针
重置缓存区

–soft

在本地库挪动 HEAD 指针

后退和后退命令

三种形式:基于索引值[举荐]、应用 ^、应用 ~

# 到指定某个提交
git reset --hard commit_ID

# 往后退
git reset --hard HEAD^  // 退一步
git reset --hard HEAD^^ // 退两步
...

# 往后退
git reset --hard HEAD~1 // 退一步
git reset --hard HEAD~2 // 退两步
...

不太罕用的命令

# 依据文件的散列值,把对象内容从对象库中提取进去
git cat-file -p 散列值

# 通过对象的惟一前缀来查找对象散列值(如:3b18e512d)
git rev-parse 3b18e512d

# 查看版本库中的所有文件,及其对应的散列值
git ls-files -s

# 捕捉索引状态,并保留到一个数对象里
git write-tree

# 查看提交的细节
git show --prety=fuller

# 计算文件的 SHA1 散列值
git hash-object file

# 将一个文件由已暂存转化成未暂存, 也就是删除索引中的文件并保留在工作目录中
git rm --cached file

正文完
 0