git常用技能(转)

学习使用 Git 已经一年有余,一些常用技能也用的炉火纯青了,但偶尔碰到一些生僻的技能,总是需要去 Google,第二次用时又忘了。所以这是一篇我自认为比较重要的 Git 技能表,主要供自己查阅使用,反复查阅能够加深印象,提升技能熟练度。如果你是还不知道 Git 是什么,建议先阅读 廖雪峰的Git教程

工作流

Git 最核心的一个概念就是工作流。工作区(Workspace)是电脑中实际的目录;暂存区(Index)像个缓存区域,临时保存你的改动;最后是版本库(Repository),分为本地仓库和远程仓库。下图真是一图胜千言啊,就无耻盗图了。

远程仓库

添加远程仓库

git remote add origin [email protected]name:path/repo-name.git  #添加一个远程库

查看远程仓库

git remote      #要查看远程库的信息git remote -v   #显示更详细的信息

推送分支

git push origin master    #推送到远程master分支

抓取分支

git clone [email protected]name:path/repo-name.git   #克隆远程仓库到本地(能看到master分支)git checkout -b dev origin/dev  #创建远程origin的dev分支到本地,并命名为devgit checkout origin/dev --track #与上面效果一样git pull origin master          #从远程分支进行更新 git fetch origin master         #获取远程分支上的数据

$ git branch --set-upstream branch-name origin/branch-name,可以建立起本地分支和远程分支的关联,之后可以直接git pull从远程抓取分支。

另外,git pull = git fetch + merge to local

删除远程分支

$ git push origin --delete bugfixTo https://github.com/wuchong/jacman - [deleted]         bugfix

更新远程分支信息

项目往前推进的过程中,远程仓库上经常会增加一些分支、删除一些分支。 所以有时需要与远程同步下分支信息。

git fetch -p

-p就是修剪的意思。它在fetch之后删除掉没有与远程分支对应的本地分支,并且同步一些远程新创建的分支和tag。

历史管理

查看历史

git log --pretty=oneline filename #一行显示git log -p -2      #显示最近2次提交内容的差异git show cb926e7   #查看某次修改

版本回退

git reset --hard HEAD^    #回退到上一个版本git reset --hard cb926e7  #回退到具体某个版git reflog                #查看命令历史,常用于帮助找回丢失掉的commit

用HEAD表示当前版本,上一个版本就是HEAD^,上上一个版本就是HEAD^^HEAD~100就是上100个版本。

管理修改

git status              #查看工作区、暂存区的状态git checkout -- <file>  #丢弃工作区上某个文件的修改git reset HEAD <file>   #丢弃暂存区上某个文件的修改,重新放回工作区

查看差异

git diff              #查看未暂存的文件更新 git diff --cached     #查看已暂存文件的更新 git diff HEAD -- readme.txt  #查看工作区和版本库里面最新版本的区别git diff <source_branch> <target_branch>  #在合并改动之前,预览两个分支的差异

使用内建的图形化git:gitk,可以更方便清晰地查看差异。当然 Github 客户端也不错。

删除文件

git rm <file>           #直接删除文件git rm --cached <file>  #删除文件暂存状态

储藏和恢复

git stash           #储藏当前工作git stash list      #查看储藏的工作现场git stash apply     #恢复工作现场,stash内容并不删除git stash pop       #恢复工作现场,并删除stash内容

分支管理

创建分支

git branch develop              #只创建分支git checkout -b master develop  #创建并切换到 develop 分支

合并分支

git checkout master         #切换到主分支git merge --no-ff develop   #把 develop 合并到 master 分支,no-ff 选项的作用是保留原分支记录git branch -d develop       #删除 develop 分支

标签

显示标签

git tag         #列出现有标签 git show <tagname>  #显示标签信息

创建标签

git tag v0.1    #新建标签,默认位 HEADgit tag v0.1 cb926e7  #对指定的 commit id 打标签git tag -a v0.1 -m ‘version 0.1 released‘   #新建带注释标签

操作标签

git checkout <tagname>        #切换到标签

git push origin <tagname>     #推送分支到源上git push origin --tags        #一次性推送全部尚未推送到远程的本地标签

git tag -d <tagname>          #删除标签git push origin :refs/tags/<tagname>      #删除远程标签

Git 设置

设置 commit 的用户和邮箱

git config user.name "xx"               #设置 commit 的用户git config user.email.com "[email protected]"   #设置 commit 的邮箱git config format.pretty oneline        #显示历史记录时,每个提交的信息只显示一行
时间: 2024-10-05 12:07:20

git常用技能(转)的相关文章

IDEA第五章----Git常用技能

前几篇已经介绍了idea的环境搭建及基础配置常用模板等,这一章我们介绍下idea中git的一些常用技能,包括提交文件,排除提交文件,合并分支,解决冲突,还原代码等等等. 第一节:Git常用技能 Git客户端的配置 Git中常用菜单 左侧文件第一种颜色是有修改的,第二个是新增的,第三个是没有修改的.箭头一表示修改的代码,箭头二表示新增的代码,箭头三表示删除的代码 这是Git的提交页面,从左边数第一个是比较修改,第二个是刷新,第五个是增加change list,第六个是删除,第八个是还原,第九个是定

【前端小小白的学习之路】Git常用命令整理

Git 常用命令清单. 几个专用名词的译名如下: Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库 一.新建代码库 # 在当前目录新建一个Git代码库 $ git init # 新建一个目录,将其初始化为Git代码库 $ git init [project-name] # 下载一个项目和它的整个代码历史 $ git clone [url] 二.配置 Git的设置文件为.gitconfig,它可以在用户主目录下(全局

git常用命令2

git常用命令2 添加远程仓库(以github为例) 登录官方网站https://github.com,没有的话去注册一个账号吧. 然后新建一个仓库 在Repository name填入learngit,其他保持默认设置,点击"Create repository"按钮,就成功地创建了一个新的Git仓库: 目前,在GitHub上的这个learngit仓库还是空的,GitHub告诉我们,可以从这个仓库克隆出新的仓库,也可以把一个已有的本地仓库与之关联,然后,把本地仓库的内容推送到GitHu

iOS开发——开发技巧&amp;Git常用命令

Git常用命令 初始化git init        加—bare实现远程仓库 配置git config user.name iCocos 配置全局git config —global user.name iCocosgit config —global user.email [email protected] 状态git status 添加到帮派git add iCocos.m 提交git commit iCocos.m -m “注释” Log纪录git loggit log + 文件名git

git常用命令符

全局配置 $ git config --global user.name "姓名" 告诉git你是谁 $ git config --global user.email "[email protected]" 告诉git怎么联系你 如果注册了 github 账号,邮箱最好和 github 账号统一 $ git config -l 查看配置信息初始化代码仓库 $ git init 初始化代码库 $ git add . 将所有变化添加到暂存区 $ git commit -

(小组)Git 常用命令整理

Git 常用命令整理 取得Git仓库 初始化一个版本仓库 git init Clone远程版本库 git clone [email protected]:wordpress.git 添加远程版本库origin,语法为 git remote add [shortname] [url] git remote add origin [email protected]:wordpress.git 查看远程仓库 git remote -v 提交你的修改 添加当前修改的文件到暂存区 git add . 如果

12306常用技能

筛选时间 原页面的发车时间太宽了,如果只想要16:30-19:20的票就没法选.我一般是这个时间段回去. chrome里面,右键->审查元素(发车时间那个下拉列表)->修改value->重新选一下下拉列表那个改动过的项. 刷新时间 F12->Console->输入autoSearchTime=500->回车. 这样选择自动查询后,就会每隔500ms刷新一次了. 12306常用技能,布布扣,bubuko.com

github创建远程仓库和git常用命令

git创建远程仓库 首先到github页面上创建仓库(repository)如下: 然后初始化文件夹为仓库,并提交到远程仓库,如下: [[email protected] aa]# git init Initialized empty Git repository in /data/mydata/aa/.git/ [[email protected] aa]# git add . [[email protected] aa]# git commit -m "first commit"

Git常用命令介绍

Git分布式版本控制系统,非常流弊的一个版本管理系统,此博文介绍下git常用的命令,适用于不会Git版本控制的菜鸟,对于维护Git服务器的大牛来说,跪求指教,其实我也是菜鸟. Git是被压迫出来的产物,因为BitMover公司收回了版本控制系统BitKeeper对linux社区免费使用的权限,而linux的开发迫切需要一个好的分布式版本控制系统,我们心高气傲的linux之父linus不愿意向BitMover低头付费,一生气就花了不到一个月的时间用自己的C写出了现在最流行的分布式版本控制系统git