Git 基本命令

配置命令

查看配置信息

查看当前git的版本:git --version

$ git version
git version 2.13.0.windows.1

查看已有的全部配置:git config --list

core.symlinks=false
core.autocrlf=true
help.format=html
rebase.autosquash=true
http.sslcainfo=E:/java_app/git/Git/mingw64/ssl/certs/ca-bundle.crt
diff.astextplain.textconv=astextplain
credential.helper=manager
user.name=lena-777
user.email=951747357@qq.com
......

如果看到同一个配置名有多个配置,说明它们来自不同的配置文件,Git实际采用最后一个。
编辑git配置文件(修改只对当前仓库有效):git config -e
编辑git配置文件(对所有仓库有效):git config -e --global

也可以通过vim查看配置文件内容(可以在文件中添加配置保存文件即可):vim ~/.gitconfig

[user]
    	name = lena-777
    	email = 951747357@qq.com
[credential]
	helper = store

查看某一个配置:git config 配置名

$ git config user.name
lena-777

用户个人信息

配置个人用户名:git config user.name "用户名"
配置电子邮件地址:git config user.email 邮箱
以上的配置默认只在当前项目中生效。如果想要配置在以后的项目都生效,就应该更改配置文件(位于当前用户主目录下)的配置信息,这时候需要加上--global选项,例如配置用户名使用git config --global user.name "用户名"

文本编辑器

Git默认使用是Vim的文本编辑器。
更改默认的文本编辑器:git config --global core.editor 编辑器(如emacs)

差异分析工具

更改解决合并冲突时使用的差异分析工具:git config --global merge.tool 工具名称(如vimdiff、kdiff3)

仓库操作

创建仓库

创建仓库(将当前目录作为Git仓库):git init
使用指定目录作为Git仓库:git init 路径
创建仓库后,会在目录下出现一个名为.git的目录,所有Git需要的数据和资源都存放在这个目录中。

添加文件到暂存区,参与版本控制:git add 文件
提交修改:git commin -m '提交说明'(若在windows系统,将单引号改为双引号)

克隆仓库

克隆Git仓库到当前目录下:git clone Git仓库
克隆Git仓库到指定目录下:git clone Git仓库 本地目录

基本操作

图片来源于https://www.runoob.com/git/git-basic-operations.html
[图片来源于:https://www.runoob.com/git/git-basic-operations.html

首先需要知道Git共有四个区域:工作区、暂存区、本地仓库、远程仓库。
工作区就是我们本地项目的路径;当我们要将文件纳入版本管理的时候,可以将文件add到暂存区;当要将暂存区的变更提交时,可以commit到本地仓库;当要将本地仓库的变更同步到远程仓库的时候,可以使用push

初始化仓库:git init
添加文件到暂存区:git add 文件
将暂存区的内容提交到本地仓库中git commit

版本操作

查看仓库当前状态(会显示有变更的文件):git status
比较暂存区和工作区文件的差异:git diff 文件(具体用法可点击查看
退回某一次提交版本:git reset [HEAD] [可指定某个文件]

HEAD 和 HEAD~0 表示当前版本
HEAD^ 和 HEAD~1 表示上一个版本
HEAD^^ 和 HEAD^2 表示上上一个版本
HEAD^^^ 和 HEAD^3 表示上上上一个版本

删除工作区文件:git rm 文件
移动或重命名文件:git mv 原文件 移动或重命名后的文件

远程操作

显示所有远程仓库:git remote -v
显示某个远程仓库信息:git remote show 远程仓库
添加远程版本库:git remote add 本地仓库分支(origin) 远程仓库
删除远程仓库:git remote rm name
修改仓库名:git remote rename 原仓库名 更新后的仓库名
从远程仓库获取代码库:git fetch 仓库
将远程仓库的数据提取并尝试合并到当前本地分支:git merge 仓库/分支
下载远程代码并合并本地的版本:git pull 远程主机名 远程分支名:本地分支名(如果远程分支是与当前分支合并,则可以不用写本地分支)
上传本地舱底的版本到远程并合并:git push 远程主机名 本地分支名:远程分支名(若本地分支名与远程分支名相同,则写一个即可)

abc@LAPTOP-V84TLHG6 MINGW64 /e/golang/GoWorks/helloworld (master)
$ git commit -m '自实现栈、队列,表达式的计算等'	# commit更新代码到本地仓库
[master bade274] 自实现栈、队列,表达式的计算等
 29 files changed, 408 insertions(+)
 create mode 100644 algorithm/disk.go
 create mode 100644 algorithm/sort_array/insertion.go
 create mode 100644 algorithm/sort_array/insertion_test.go
 create mode 100644 algorithm/sort_array/selection.go
 create mode 100644 algorithm/sort_array/selection_test.go
 create mode 100644 data_structure/array_sparse.go
 create mode 100644 data_structure/array_sparse_test.go
 create mode 100644 data_structure/list_double.go
 create mode 100644 data_structure/list_double_test.go
 create mode 100644 data_structure/list_signal.go
 create mode 100644 data_structure/list_signal_test.go
 create mode 100644 data_structure/queue.go
 create mode 100644 data_structure/queue_test.go
 create mode 100644 data_structure/stack.go
 create mode 100644 data_structure/stack_test.go
 create mode 100644 db/mysql/affair.go
 rename {mysql => db/mysql}/conn.go (100%)
 rename {mysql => db/mysql}/crud.go (100%)
 rename {mysql => db/mysql}/crud_test.go (100%)
 create mode 100644 db/mysql/init.go
 create mode 100644 db/mysql/pretreatment.go
 create mode 100644 db/mysql/pretreatment_test.go
 create mode 100644 db/mysql/sqlx/sqlx.go
 create mode 100644 db/mysql/sqlx/sqlx_test.go
 create mode 100644 exercise/calculate.go
 create mode 100644 exercise/calculate_test.go
 create mode 100644 study/test.go
 create mode 100644 util/TurnType.go
 create mode 100644 util/TurnType_test.go

abc@LAPTOP-V84TLHG6 MINGW64 /e/golang/GoWorks/helloworld (master)
$ git remote -v	# 查看所有仓库
origin  https://gitee.com/lena7/golang-learning-code.git (fetch)
origin  https://gitee.com/lena7/golang-learning-code.git (push)

abc@LAPTOP-V84TLHG6 MINGW64 /e/golang/GoWorks/helloworld (master)
$ git push origin master	# 将本地master代码提交到远程仓库origin
Counting objects: 37, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (35/35), done.
Writing objects: 100% (37/37), 5.96 KiB | 0 bytes/s, done.
Total 37 (delta 3), reused 26 (delta 1)
remote: Powered by GITEE.COM [GNK-6.1]
To https://gitee.com/lena7/golang-learning-code.git
   4310e14..bade274  master -> master

分支操作

查看所有本地分支:git branch(列出的分支中带*号的表示当前本地分支)
创建分支:git branch 分支名
删除分支:git branch -d 分支名
切换分支:git checkout 要切换的分支名
合并分支到当前分支:git merge 分支
合并冲突:手动解决文件内容的冲突,然后使用git add 文件名告诉Git文件冲突已经解决,最后使用git commit提交到本地仓库即可

提交记录

查看提交历史详细信息:git log
查看历史记录,简洁显示:git log --oneline

$ git log --oneline
266b1da (HEAD -> master, origin/master, origin/HEAD) 5.26.完成
78ef5fa 院内转移页面
20af772 关系转移页面
298b4a3 前端页面修改
18c457e 添加党组织关系转接界面

查看历史记录,以拓扑图形式显示,查看分支的出现和合并:git log --graph

$ git log --graph
* commit 266b1da9ce6b30e329e24c779285f9e99fc3649d (HEAD -> master, origin/master, origin/HEAD)
| Author: xxx
| Date:   Wed May 26 20:23:20 2021 +0800
|
|     5.26.完成
|
*   commit e29f5f8771ab61942b2dfa80727007d423ad3f49
|\  Merge: 31cb73e eaa7d7b
| | Author: lena-777 <951747357@qq.com>
| | Date:   Tue May 18 23:22:17 2021 +0800
| |
| |     Merge remote-tracking branch 'origin/master'
| |
| *   commit eaa7d7bf016375ea115f8273385787a841312ff8
| |\  Merge: 5ebdb98 93b2798
| | | Author: xxx
| | | Date:   Tue May 18 22:00:35 2021 +0800
| | |
| | |     Merge remote-tracking branch 'origin/master'
| | |
| * | commit 5ebdb98a32bd96406c1c07399d71206635a05f83
| | | Author: xxx
| | | Date:   Tue May 18 21:53:51 2021 +0800
| | |
| | |     5.18/集体活动,培养教育模块增删改查
| | |
* | | commit 31cb73ed6b72983e31c0b48abafd85315b15dda6
| | | Author: lena-777 <951747357@qq.com>
| | | Date:   Mon May 17 21:00:07 2021 +0800
| | |
| | |     前台页面的修改
| | |
* | | commit 99e0f2be41399154c2e7ca212b4913de1daeaec5
| |/  Author: lena-777 <951747357@qq.com>
|/|   Date:   Sat May 15 22:10:12 2021 +0800
| |
| |       更新数据
| |
* | commit 93b27982aa5a455d4ebbfa87f670f8afa69e9215
| | Author: lena-777 <951747357@qq.com>
| | Date:   Sat May 15 20:53:02 2021 +0800

逆向显示所有日志:git log --reverse
查找指定用户提交的日志:git log --author=作者名称
限制日志记录数:git log -要显示的记录数

以列表形式查看指定文件的历史修改记录:git blame 文件

标签

当我们需要记录某一个时刻提交的快照,可以给它打上标签
创建标签:git tag 版本(v1.0)
创建标签时带上注解(时间、作者):git tag -a 版本
查看已有标签:git tag
删除标签:git tag -d 版本
查看某版本修改的内容:git show 版本
向已发布的内容追加标签:git tag 实例ID

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值