git常用命令

git blame

如果要查看指定文件的修改记录可以使用 git blame 命令,格式如下:
git blame
git blame 命令是以列表形式显示修改记录,如下实例:

$ git blame README.md
4033d1a5 (azermu 2021-05-13 14:58:17 +0800 1) # mytest
4033d1a5 (azermu 2021-05-13 14:58:17 +0800 2) hello world
4db869a0 (azermu 2021-05-13 15:07:56 +0800 3) hello china

git log --oneline

我们可以用 --oneline 选项来查看历史记录的简洁的版本。
添加远程版本库:

git remote add [shortname] [url]

shortname 为本地的版本库,例如:

提交到 Github
$ git remote add origin git@github.com:tianqixin/runoob-git-test.git
$ git push -u origin master
这个好像clone之后就会自动的add,我clone了别人的仓库后直接查看就会有。前提事你得配好GitHub的ssh。配置ssh 菜鸟教程。

$ git remote -v
origin  git@github.com:Antabot/White-Jotter.git (fetch)
origin  git@github.com:Antabot/White-Jotter.git (push)

git remote add的详细解释,git远程仓库分支的各命令的具体解析(git remote add)

git pull 命令用于从远程获取代码并合并本地的版本。

git pull 其实就是 git fetch 和 git merge FETCH_HEAD 的简写。 命令格式如下:
git pull <远程主机名> <远程分支名>:<本地分支名>
实例
更新操作:

$ git pull
$ git pull origin
将远程主机 origin 的 master 分支拉取过来,与本地的 brantest 分支合并。

git pull origin master:brantest
如果远程分支是与当前分支合并,则冒号后面的部分可以省略。

git pull origin master
一般都使用git pull origin master直接更新整个本地仓库。

git push 命令

git push 命用于从将本地的分支版本上传到远程并合并。

命令格式如下:

git push <远程主机名> <本地分支名>:<远程分支名>如果本地分支名与远程分支名相同,则可以省略冒号:
git push <远程主机名> <本地分支名>
实例
以下命令将本地的 master 分支推送到 origin 主机的 master 分支。

$ git push origin master
相等于:

$ git push origin master:master

$ touch runoob-test.txt      # 添加文件
$ git add runoob-test.txt 
$ git commit -m "添加到远程"
master 69e702d] 添加到远程
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 runoob-test.txt

$ git push origin master    # 推送到 Github

Git fetch和git pull的区别

git fetch:相当于是从远程获取最新版本到本地,不会自动merge
git pull:相当于是从远程获取最新版本并merge到本地
详细解释,Git fetch和git pull的区别
git pull 其实就是 git fetch 和 git merge FETCH_HEAD 的简写

git status

用于查看在你上次提交之后是否有对文件进行再次修改。
通常我们使用 -s 参数来获得简短的输出结果:

$ git status -s
AM README
A hello.php

git diff

git diff 命令比较文件的不同,即比较文件在暂存区和工作区的差异。

git diff 命令显示已写入暂存区和已经被修改但尚未写入暂存区文件对区别。

git diff 有两个主要的应用场景。

尚未缓存的改动:git diff
查看已缓存的改动: git diff --cached
查看已缓存的与未缓存的所有改动:git diff HEAD
显示摘要而非整个 diff:git diff --stat

git config --list

查看所有git的global配置

git add 命令

git add 命令可将该文件添加到暂存区。

添加一个或多个文件到暂存区:

git add [file1] [file2] …
添加指定目录到暂存区,包括子目录:

git add [dir]
添加当前目录下的所有文件到暂存区:
git add .

git commit 命令

git commit 命令将暂存区内容添加到本地仓库中。

提交暂存区到本地仓库中:

git commit -m [message]
[message] 可以是一些备注信息。

提交暂存区的指定文件到仓库区:

$ git commit [file1] [file2] … -m [message]

$ git commit -a:-a 参数设置修改文件后不需要执行 git add 命令,直接来提交,一般不使用

git reset 命令

版本回退,详细解释,git reset 命令
git checkout . #本地所有修改的。没有的提交的,都返回到原来的状态
git stash #把所有没有提交的修改暂存到stash里面。可用git stash pop回复。
git reset --hard HASH #返回到某个节点,不保留修改。
git reset --soft HASH #返回到某个节点。保留修改
git clean -df #返回到某个节点,(未跟踪文件的删除)
git clean 参数
-n 不实际删除,只是进行演练,展示将要进行的操作,有哪些文件将要被删除。(可先使用该命令参数,然后再决定是否执行)
-f 删除文件
-i 显示将要删除的文件
-d 递归删除目录及文件(未跟踪的)
-q 仅显示错误,成功删除的文件不显示

一般要还原无用的修改就用如下命令

$ git checkout . && git clean -df

git init

初始化一个本地仓库

git clone

git clone 拷贝一个 Git 仓库到本地,让自己能够查看该项目,或者进行修改。

$ git clone https://github.com/tianqixin/runoob-git-test
Cloning into 'runoob-git-test'...
remote: Enumerating objects: 12, done.
remote: Total 12 (delta 0), reused 0 (delta 0), pack-reused 12
Unpacking objects: 100% (12/12), done.

一般使用clone命令会自动init当前目录,产生.git文件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值