【技术干货】git常用命令
2.1 git init
语法: git init
在当前目录初始化git仓库,适用于尚未使用git管理的项目
2.2 git clone
语法: git clone <url>
例如: git clone git@vcs.51talk.com:scm_test/ACTalk.git
此命令clone ACTalk.git这个仓库到本地的ACTalk文件夹。
这个列子中使用的ssh协议仓库地址,可以推送代码。如果使用http协议的,则不能推送代码。
2.3 git status
语法: git status
file:///C:/Users/shenchengwei/Evernote/TEMP/enhtmlclip/Image(5).png
Changes to be commited: 已暂存,执行commit将被提交的文件
Changes not staged for commit: 已修改,但未暂存 #低版本git的提示信息 Changed but not updated
Untracked files: 未跟踪
2.4 git add
语法: git add <path>
git add 根据文件状态不同,作用也不同
(1)Untracked文件: 添加文件到暂存区
(2)冲突文件: 标记为已解决
(3)已修改的文件: 添加修改到暂存区
添加文件到暂存区
git add . #添加所有文件(工程文件等都会提交)
git add <filename> #添加指定文件
2.5 git commit
git commit -m "<commit message>"
提交文件到本地仓库(暂存区)
git commit -m "commit message"
跳过暂存区
git commit -am “commit message” #提交所有已修改的文件,不包含untracked文件
2.6 git log
语法: git log <options> -- <path>
常用参数有:
-<number>: 显示日志条数
-p: 显示每次提交修改了哪些代码
--stat: 修改了哪些文件,每个文件各修改多少行代码
--author: 按作者搜索
--grep: 按日志内容搜索
例如:
git log -10 -- src/main/java/aa.java
git log --stat --author chengwei
git log -p --grep bug-xxx
2.7 git diff
语法: git diff [--cached] | [--staged]
查看还未暂存的修改
git diff
此命令比较的是工作目录中当前文件和暂存区域快照之间的差异
查看已暂存的修改
git diff --cached/staged
已经暂存的文件和上次提交时的快照之间的差异
2.8 git fetch
语法: git fetch <remote_name>
例如: git fetch origin
更新远程仓库所有分支,只更新指针文件,不将最新代码merge到本地分支
2.9 git pull
语法: git pull <remote_name> <branch_name>
例如: git pull origin master
实际执行: (1)git fetch origin (2) git merge origin
先获取origin所有更新;将远程仓库master最新分支merge到当前分支(master分支)
2.10 git push
语法: git push -u <remote_name> <branch_name>
推送本地分支到远程仓库
-u: 建立跟踪关系
新分支推送到仓库后,后续推送只需要执行git push(推送)或git pull(拉取)。
2.11 git branch(用于查看分支列表)
常用参数:
不带参数: 显示所有本地分支
-r: 显示所有远程分支
-a: 显示所有分支,包括本地和远程分支
以当前分支新建一个分支
git branch <branch-name> #用checkout建分支更方便
2.12 git checkout
检出/切换分支:
git checkout <branch-name>
以当前分支新建分支并切换到新分支
git checkout -b <branch-name>
#相当于git branch <branch-name> && git checkout <branch-name>
从远程分支新建分支,并建立跟踪
git checkout -b <branchname> -t <remote-branch>
2.13 git merge
合并本地分支
git merge <branchname>
合并远程分支(直接合并远程分支,需要先执行git pull或git fetch)
git merge origin/FEA/FEA-001
2.14 git remote
git remote -v
查看远程仓库列表(分布式支持多个仓库地址)
git remote add <remote_name> <url>
添加远程仓库
git remote prune origin
清理远程仓库分支列表,删除不存在的远程分支
2.15 git remove
git rm 强制删除加-f(force)
将文件从暂存区删除
git rm --cached <file name>
不小心纳入仓库后,要移除跟踪但不删除文件
如果删除之前修改过并且已经放到暂存区域的话,则必须要用强制删除选项 -f(译注:即 force 的首字母),以防误删除文件后丢失修改的内容。
【技术干货】git常用命令的更多相关文章
- Git常用命令集锦
本篇Git命令博客主要是一些Git常用命令,适合于有一定Git或linux基础的小伙伴进行参考 1.新建文件夹 mkdir 文件夹名 2.查看目录机构: pwd 3.将文件添加至Git管理范围:git ...
- 项目开发中git常用命令、git工作流、git分支模型
#新建代码库git init # 在当前目录新建一个Git代码库git init [project-name] # 新建一个目录,将其初始化为Git代码库git clone [url] # 下载一个项 ...
- 10年阿里自动化测试架构师帮您收集的:git常用命令大全以及git原理图【泣血推荐,建议收藏】
一.Git分布式版本控制简介 Git 是一个很强大的分布式版本控制系统.它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势.本来想着只把最有用.最常用的 Git 命令记下来, ...
- git常用命令(持续更新中)
git常用命令(持续更新中) 本地仓库操作git int 初始化本地仓库git add . ...
- Git 常用命令详解
Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...
- Git 常用命令大全
Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ git clone git://github.com/jquery/jquery.git 查看远程仓库:$ git remote -v 添加 ...
- Git常用命令总结
Git常用命令总结 git init 在本地新建一个repo,进入一个项目目录,执行git init,会初始化一个repo,并在当前文件夹下创建一个.git文件夹. git clone ...
- GIT常用命令备忘
Git配置 git config --global user.name "storm" git config --global user.email "stormzhan ...
- Git 常用命令2
Git 常用命令 Git 是一个很强大的分布式版本控制系统.它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势. Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ gi ...
- git常用命令-基本操作
git常用命令-基本操作 1) 新增文件 新增了Test_1.java git add Test_1.java git commit –m “新增了Test_1.java” git push ...
随机推荐
- LNMP状态管理命令
https://lnmp.org/faq/lnmp-status-manager.html LNMP状态管理命令: LNMP 1.2+状态管理: lnmp {start|stop|reload|res ...
- ==和equals详解+例子
一开始遇见==和equals我也是分不清,后来看了很多博客,收益匪浅, 担心以后给忘了,所以写下这个,以后复习可以用. (有哪里写得不对的,希望可以留言帮忙改进,大家一起共同进步) 一.Java数据类 ...
- 微软Azure AspNetCore微服务实战第2期
2018年1月28日,虽然上海的大雪在城区已经见不到踪影,但还是很冷.不过天气再冷,也阻止不了小伙伴参加活动的热情. 感谢王振,苏老师以及微软Azure API Management的产品经理Alvi ...
- “此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态”的问题的解决
虚拟机使用的是VMware Workstation,并且首次在虚拟机体验64 位系统.在新建好虚拟机,运行时候就出现了VMware Workstation 的提醒:此主机支持 Intel VT-x,但 ...
- JAR包介绍大全用途作用详解JAVA
jta.jar 标准JTA API必要commons-collections.jar 集合类 必要antlr.jar ANother Tool for Language Recognition 必要 ...
- get最简单直接粗爆git与github教程
Git是分布式版本控制系统(可以理解为文件管理拓展工具) github一个在线文件托管系统(可以理解为一个在线云盘) 准备工作,在git官网下载git软件件,安装git软件,以windows.为例,下 ...
- PowerShell 异常处理
在使用 PowerShell 的过程中,发现它的异常处理并不像想象中的那么直观,所以在这里总结一下. Terminating Errors 通过 ThrowTerminatingError 触发的错误 ...
- Servlet--传参和接参
OK,现在基本的Servlet接口和常用类都整理的差不多的,本篇博客开始整理Servlet和页面的交互. 1,接参 以下几个常用的方法: getParameter public String getP ...
- ActiveMQ入门练习
ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线.ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现,尽管JMS规范出台已经是很久 ...
- MySQL中判断日期间隔的方法
MySQL中查询一定时间间隔内的数据的方法比较常用,可以使用TO_DAYS.DATE_SUB等函数来实现. TO_DAYS函数的作用是返回指定日期从0年开始计算的天数. DATE_SUB函数的作用是通 ...