Git教程6——常用命令总结

简介: 到目前为止,我们已经了解了很多git命令,我们就把工作中经常要用到的命令梳理下吧安装后的第一步当安装完 Git 应该做的第一件事就是设置你的用户名称与邮件地址,因为每次提交都要用到这些信息:$ git config --global user.name "Your Name"$ git config --global user.email "email@example.com"合并冲突我们已经说过合并冲突的解决方式。
到目前为止,我们已经了解了很多git命令,我们就把工作中经常要用到的命令梳理下吧
安装后的第一步
当安装完 Git 应该做的第一件事就是设置你的用户名称与邮件地址,因为每次提交都要用到这些信息:
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
合并冲突
我们已经说过合并冲突的解决方式。通常是编辑一下文件,去掉<<<<,====,>>>>标志,保留需要留下的代码。另一种方式是通过git输出文件 - 你可以输出到另外的文件名,然后当你决定了要用哪个后,再将选定的正确文件复制为正常的文件名
远端服务器
git的一个超强大的功能就是可以有不止一个远端服务器(实际上你一直都在一个本地仓库上工作)。你并不是一定都要有这些服务器的写权限,你可以有多个可以读取的服务器(用来合并他们的工作)然后写入到另外一个仓库,添加一个新的远端服务器很简单:
#关联一个远程库,url为链接地址
$ git remote add origin url
如果你想查看远端服务器的信息可以这样做:
# 显示每个远端服务器的URL$ git remote -v # 提供更多详细信息$ git remote show name
建立分支
在git里建立分支非常简单(而且像闪电一样快,因为它只需要创建一个小于100字节的文件)。用普通方式建立新分支并切换过去:
# 创建dev分支并切换到dev分支上
$ git checkout -b dev
git checkout 命令加上 –b参数表示创建并切换,相当于如下2条命令:
$ git branch dev
$ git checkout dev
远端分支
如果你在本地有一个分支希望推到远端服务器上,你可以用一行命令推送上去
#默认情况下remoteName就是origin
$ git push [remoteName] [localBranchName]
如果你想在远端服务器上删除一个分支
$ git push origin :heads/[name]
如果你想查看所有远端分支的状态可以这样做:
$ git remote show origin
这个命令可能会列出服务器上一些以前有过但现在已经不在了的分支。如果碰到这种情况你可以用下面的命令从你本地分支里清理掉:
$ git remote prune

储藏
在git里你可以把当前工作状态放进一个储藏堆栈中,然后可以再取出来。最简单的情形是下面这样:
$ git stash# 做点其他事情...$ git stash pop
很多人经常使用git stash apply来代替pop,不过如果这样做的话最后会遗留一个很长的储藏列表。而“pop”会在全部加载后自动从堆栈中移除。如果使用过git stash apply,你也可以使用下面的命令从堆栈上移除最后一项:
$ git stash drop
git会基于当前的提交信息自动创建评论。如果你更希望有自定义信息的话(因为它可能和前一个提交没有任何联系):
$ git stash save "My stash message"
如果你希望从列表中取出一个特定的储藏点(不一定非得是最后一个)可以先列出它们然后用下面的方式取出:
$ git stash list stash@{0}: On master: Changed to German stash@{1}: On master: Language is now Italian$ git stash apply stash@{1}
查看日志
我们经常使用‘git log’来查看最近的提交。不过,有一些技巧来更好地应用。比如,你可以使用下面的命令来查看每次提交的具体改动:
$ git log -p
或者你可以仅仅查看有哪些文件改动:
$ git log --stat
搜索日志
如果你想找特定提交者可以这样做:
$ git log --author=Andy
或者你想在提交信息里找一些相关字段:
$ git log --grep="Something in the message"

另外这里粘贴一下其他网友总结的,我觉得总结的非常好:
1) 远程仓库相关命令
检出仓库:$ git clone url
查看远程仓库:$ git remote -v
添加远程仓库:$ git remote add [name] [url]
删除远程仓库:$ git remote rm [name]
修改远程仓库:$ git remote set-url --push [name][newUrl]
拉取远程仓库:$ git pull [remoteName] [localBranchName]
推送远程仓库:$ git push [remoteName] [localBranchName]
 
2)分支(branch)操作相关命令
查看本地分支:$ git branch
查看远程分支:$ git branch -r
创建本地分支:$ git branch [name] ----注意新分支创建后不会自动切换为当前分支
切换分支:$ git checkout [name]
创建新分支并立即切换到新分支:$ git checkout -b [name]
删除分支:$ git branch -d [name] ---- -d选项只能删除已经参与了合并的分支,对于未合并的分支是无法删除的。如果想强制删除一个分支,可以使用-D选项
合并分支:$ git merge [name] ----将名称为[name]的分支与当前分支合并
创建远程分支(本地分支push到远程):$ git push origin [name]
删除远程分支:$ git push origin :heads/[name]
$ git push origin test:master         // 提交本地test分支作为远程的master分支 
$ git push origin test:test              // 提交本地test分支作为远程的test分支

如果想删除远程的分支呢?类似于上面,如果:左边的分支为空,那么将删除:右边的远程的分支。
$ git push origin :test              // 刚提交到远程的test将被删除,但是本地还会保存的,不用担心

3)版本(tag)操作相关命令
查看版本:$ git tag
创建版本:$ git tag [name]
删除版本:$ git tag -d [name]
查看远程版本:$ git tag -r
创建远程版本(本地版本push到远程):$ git push origin [name]
删除远程版本:$ git push origin :refs/tags/[name]
 
4) 子模块(submodule)相关操作命令
添加子模块:$ git submodule add [url] [path]
如:$ git submodule add git://github.com/soberh/ui-libs.git src/main/webapp/ui-libs
初始化子模块:$ git submodule init ----只在首次检出仓库时运行一次就行
更新子模块:$ git submodule update ----每次更新或切换分支后都需要运行一下
删除子模块:(分4步走哦)
1)$ git rm --cached [path]
2) 编辑“.gitmodules”文件,将子模块的相关配置节点删除掉
3) 编辑“.git/config”文件,将子模块的相关配置节点删除掉
4) 手动删除子模块残留的目录

实际工作中我们用到的命令远不止这些,希望和大家共同学习进步,请大家多多指教

参考:



相关文章
|
14天前
|
缓存 数据可视化 网络安全
Git命令大全
Git命令大全
45 1
|
18天前
|
开发工具 git
Git教程:深入了解删除分支的命令
【4月更文挑战第3天】
37 0
Git教程:深入了解删除分支的命令
|
1月前
|
存储 Shell Linux
【Shell 命令集合 文件管理】Linux git命令使用教程
【Shell 命令集合 文件管理】Linux git命令使用教程
34 0
|
1月前
|
开发工具 git
git常用命令整理
git常用命令整理
13 0
|
23天前
|
开发工具 git 开发者
Git常用命令大全:让你轻松驾驭版本控制
Git命令速查:`git init`新建仓库,`git clone`克隆,`git add`入暂存区,`git commit -m`提交,`git status`查看状态,`git log`查看历史,`git branch`创建分支,`git checkout`切换,`git merge`合并,`git pull`拉取更新,`git push`推送,`git remote -v`查看远程,`git checkout --`撤销本地修改,`git reset HEAD`取消暂存,`git reset --hard`回退版本。掌握这些,提升代码管理效率!
18 0
|
3天前
|
存储 Linux 开发工具
Git 分布式版本控制系统基本概念和操作命令
Git 分布式版本控制系统基本概念和操作命令
21 0
|
4天前
|
算法 Java BI
云效产品使用报错问题之平台上导出的统计数据和 git 中使用命令导出的数据统计都对不上,如何解决
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
1月前
|
算法 开发工具 git
【git 实用指南】git 增加 本地代码 git add 相关命令和复杂情况需求
【git 实用指南】git 增加 本地代码 git add 相关命令和复杂情况需求
93 0
|
1月前
|
程序员 开发工具 git
好程序员Git入门到精通教程
本课程主要通过命令行和idea来介绍Git的安装、仓库创建、工作流、远程仓库、克隆仓库、标签管理和分支管理等Git的主要内容。 另外关于GitHub的使用介绍也有完整的说明和使用,接轨生产环境使用方式。
10 1
好程序员Git入门到精通教程
|
1月前
|
Shell Linux 开发工具
【Shell 命令集合 系统管理 】Linux 查看当前Git仓库的提交历史 gitps命令 使用指南
【Shell 命令集合 系统管理 】Linux 查看当前Git仓库的提交历史 gitps命令 使用指南
18 0

相关实验场景

更多