【技术干货】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 ...
随机推荐
- ASIHTTPRequest
ASIHTTPRequest,是一个直接在CFNetwork上做的开源项目,提供了一个比官方更方便更强大的HTTP网络传输的封装.
- 安卓开发-intent在Activity之间数据传递
安卓开发-intent在Activity之间数据传递 [TOC] intent实现普通跳转 使用intent的setclass方法,示例(由此界面跳转到NewActivity界面) //使用setOn ...
- 自己搭建CA颁发证书做https加密网站
192.168.10.187 CA服务器 192.168.10.190 web服务器 (1)搭建CA cd /etc/pki/CA 在这个目录下创建serial和index.txt两个文件 echo ...
- linux如何自动获取ip地址
第一步:激活网卡 系统装好后默认的网卡是eth0,用下面的命令将这块网卡激活. # ifconfig eth0 up 第二步:设置网卡进入系统时启动 想要每次开机就可以自动获取IP地址上网,就要设置网 ...
- Linux指令--chgrp
在lunix系统里,文件或目录的权限的掌控以拥有者及所诉群组来管理.可以使用chgrp指令取变更文件与目录所属群组,这种方式采用群组名称或群组识别码都可以.Chgrp命令就是change group的 ...
- 学Java分布式和高架构,必懂的两大知识点!
今天小编为你们分享阿里巴巴2018年招聘应届毕业生,Java工程师的面试考题,主要分为三种 Java中获取 mysql连接的方式: 第一部分:分布式 三步变成:分布式 1.将你的整个软件视为一个系 ...
- jsp小结
JSP执行步骤 完整步骤: 第一步:用户通过浏览器发出一个Http请求: 第二步:web服务器识别是对jsp页面的请求: 第三步:jsp容器通过jsp引擎将jsp页面转化为servlet代码(纯ja ...
- 谈一谈jQuery核心架构设计(转)
jQuery对于大家而言并不陌生,因此关于它是什么以及它的作用,在这里我就不多言了,而本篇文章的目的是想通过对源码简单的分析来讨论 jQuery 的核心架构设计,以及jQuery 是如何利用javas ...
- 隐藏C语言黑窗口
隐藏C语言程序运行的黑窗口,加入预编译命令: (预编译,Linker链接,windows模式,黑窗口是dos模式) #pragma comment(linker,"/subsystem:\& ...
- https原理及实践
转载请注明出处 安全知识 网络安全问题 数据机密性 在网络传输数据信息时,对数据的加密是至关重要的,否则所有传输的数据都是可以随时被第三方看到,完全没有机密性可言. 数据机密性解决问题思路 利用算法 ...