Git常用命令

合集下载

linux git clone用法

linux git clone用法

linux git clone用法Git是一种分布式版本控制系统,它被广泛用于软件开发中的代码管理。

在Linux操作系统中,使用Git进行版本控制的一个重要的命令是"git clone"。

本文将详细介绍Linux Git Clone的用法及相关注意事项。

一、Git Clone概述"Git Clone"是Git的一个命令,它可以将远程Git仓库中的代码克隆到本地。

简单来说,它可以帮助开发者将已有的Git项目复制到本地工作目录,以便进行后续的代码开发、修改和提交。

二、Git Clone基本使用方法要使用Git Clone命令,需要注意以下几个关键点:1. 克隆远程仓库:要使用Git Clone,首先需要知道待克隆的远程仓库的URL。

例如,如果要克隆GitHub上的一个仓库,可以在该仓库主页中找到URL。

2. 打开终端:在Linux操作系统中,Git命令通常在终端中执行。

因此,在使用Git Clone之前,要先打开Linux终端。

3. 执行Git Clone命令:在终端中输入以下命令来执行Git Clone:```git clone <remote_repository_URL> [<local_directory>]```其中,"remote_repository_URL"是待克隆的远程仓库的URL,而"local_directory"是本地目录路径(可选),如果未指定,则默认将克隆到当前工作目录中。

4. 等待克隆完成:一旦执行Git Clone命令,Git将会自动将远程仓库中的代码克隆到本地。

在克隆过程中,请耐心等待,直到克隆完成。

5. 查看克隆结果:克隆完成后,可以使用文件浏览器或命令行的"ls"命令来查看克隆到本地的代码文件。

三、Git Clone常用选项除了基本的使用方法,Git Clone还支持一些常用的选项,以增强克隆的灵活性和效果。

git中fetch的用法

git中fetch的用法

git中fetch的用法一、概述Git是一个分布式版本控制系统,它的主要作用是帮助团队协作开发和管理代码。

在Git中,fetch是一个非常重要的命令,它可以从远程仓库中获取最新的代码,并将其保存到本地仓库中。

二、fetch命令的基本用法1. 获取远程分支信息使用fetch命令可以获取远程仓库中所有分支的信息。

例如:```git fetch origin```这个命令会获取远程仓库origin中所有分支的信息,并将其保存到本地仓库中。

2. 获取指定远程分支信息如果只想获取某个特定的远程分支信息,可以使用以下命令:```git fetch origin <branch>```其中<branch>是指要获取的远程分支名字。

例如:```git fetch origin master```这个命令会获取远程仓库origin中master分支的信息,并将其保存到本地仓库中。

3. 拉取所有变化如果想要拉取所有变化(包括新建和删除的分支),可以使用以下命令:```git fetch --all```4. 列出所有已知的远程分支如果想要列出所有已知的远程分支,可以使用以下命令:```git branch -r```三、fetch命令常用选项及其含义1. --all拉取所有变化(包括新建和删除的分支)。

2. --prune删除本地仓库中对应已经被删除的远程分支。

3. --tags拉取远程仓库中的所有标签。

四、fetch命令与pull命令的区别1. fetch命令只是将远程分支信息获取到本地,不会自动合并代码。

2. pull命令会自动将远程分支合并到本地分支中。

五、fetch命令常见问题解答1. fetch命令有哪些常用选项?常用选项有--all、--prune和--tags。

2. fetch命令与pull命令有何区别?fetch只是将远程分支信息获取到本地,不会自动合并代码;而pull 会自动将远程分支合并到本地分支中。

debug g命令用法

debug g命令用法

debug g命令用法一、概述debug g命令是Git版本控制系统中的一个重要工具,用于调试和追踪Git 仓库中的变更。

通过使用debug g命令,开发者可以更好地理解代码变更的历史和流程,从而快速定位和解决问题。

二、常用debug g命令1. git log:用于查看Git仓库的变更历史记录,包括提交ID、提交者、提交时间等信息。

2. git blame:用于查看指定文件每一行代码的变更历史,帮助开发者快速定位代码的修改人。

3. git diff:用于比较两个提交之间的差异,生成差异输出,帮助开发者理解代码的变更内容。

4. git reflog:用于查看Git仓库中所有引用日志,帮助开发者追踪分支和标签等操作的历史记录。

5. git bisect:用于在多个提交之间进行二分查找,定位到问题的根源。

1. 查看提交历史记录:命令:git log -n <数量>示例:git log -n 10解释:该命令用于查看最近<数量>个提交的历史记录,可以用于查找问题的根源。

2. 查看文件变更历史:命令:git blame <文件路径>示例:git blame main.c解释:该命令用于查看指定文件<文件路径>的每一行代码的变更历史,可以帮助开发者快速定位代码的修改人。

3. 比较两个提交之间的差异:命令:git diff <commit1> <commit2>示例:git diff c054646b0335834f6c19f58f8362b5d8f84b3e6c6 HEAD~1解释:该命令用于比较<commit1>和<commit2>之间的差异,生成差异输出,帮助开发者理解代码的变更内容。

其中,<commit1>表示要比较的第一个提交,<commit2>表示要比较的第二个提交。

1. 使用分支和标签进行追踪:使用git reflog可以查看所有引用日志,包括分支和标签等操作的历史记录。

git克隆远程仓库的指定分支方法(附常用git配置命令)

git克隆远程仓库的指定分支方法(附常用git配置命令)

git克隆远程仓库的指定分⽀⽅法(附常⽤git配置命令)⼀、普通克隆⽅式:git clone <远程仓库地址>这种克隆⽅式默认是克隆master主分⽀,⽽且通过命令 git branch --list 能看到克隆后在本地也只有这⼀个分⽀,如果再通过新建分⽀再拉取指定分⽀,甚⾄可能还需要解决冲突,太繁琐。

⼆、克隆远程指定分⽀那么,如何快速有效的直接克隆远程指定分⽀?只需要⼀条命令:git clone -b <指定分⽀名> <远程仓库地址>会⾃动在克隆该分⽀在本地,同样克隆后本地只有这⼀个分⽀。

附:常⽤git配置命令1、npm使⽤淘宝镜像源(能加快npm下载速度)npm config set registry https://2、node-sass使⽤淘宝镜像(能解决node-sass安装失败问题)npm config set sass_binary_site https:///mirrors/node-sass/3、npm恢复官⽅镜像源(发布npm包时必须切换回官⽅镜像源)npm config set registry https://4、git 配置全局⽤户名、邮箱(⽤于提交代码时记录⽤户信息)git config --global neohangit config --global user.email neohan666@5、git 配置sshssh-keygen -t rsa6、git 配置全局字符集编码(防⽌中⽂commit信息乱码)git config --global mitencoding utf-8git config --global i18n.logoutputencoding utf-8export LESSCHARSET=utf-87、git 配置全局不⾃动转换换⾏符(解决windows和max系统的默认换⾏符不⼀致问题)git config --global core.autocrlf false8、git 设置能检测⽂件名⼤⼩写(在需要的项⽬中运⾏该命令)git config core.ignorecase false到此这篇关于git克隆远程仓库的指定分⽀⽅法(附常⽤git配置命令)的⽂章就介绍到这了,更多相关git克隆远程仓库的指定分⽀内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!。

git 拉分支指令

git 拉分支指令

git 拉分支指令摘要:1.拉分支简介2.拉分支指令3.指令参数说明4.常见问题及解决方法正文:Git 是一种分布式版本控制系统,它可以帮助开发者高效地进行代码管理和协同工作。

在Git 中,拉分支是一个常见的操作,它允许用户从远程仓库获取最新的代码并将其合并到本地分支中。

拉分支操作可以确保开发者的本地代码与远程仓库保持同步,从而避免代码冲突和不必要的重复工作。

要执行拉分支操作,可以使用以下Git 指令:```git pull <远程仓库名> <分支名>```其中,`<远程仓库名>`表示要从中拉取分支的远程仓库,`<分支名>`表示要拉取的分支名。

如果不指定远程仓库名,则默认为`origin`。

如果不指定分支名,则默认为`master`。

例如,要从名为`origin`的远程仓库中拉取名为`develop`的分支,可以使用以下指令:```git pull origin develop```在执行拉分支指令时,Git 会自动将远程仓库中指定分支的最新更改拉取到本地,并尝试将其合并到当前分支。

如果本地分支与远程分支不兼容,Git 会提示用户解决冲突。

在执行拉分支操作时,可能会遇到以下问题及解决方法:1.网络问题:如果无法连接到远程仓库,请检查网络连接并确保Git 可以访问远程仓库。

2.权限问题:如果无法拉取远程仓库中的分支,请检查Git 用户名和密码是否正确,并确保具有足够的权限。

3.分支不存在:如果指定的分支名不存在于远程仓库中,请检查分支名是否正确,或从远程仓库中创建该分支。

4.冲突解决:如果本地分支与远程分支不兼容,请使用`git merge`命令解决冲突,并提交解决后的代码。

总之,Git 拉分支操作是一种将远程仓库中的最新代码拉取到本地分支的方法,它可以帮助开发者高效地进行代码管理和协同工作。

git stash 高级用法

git stash 高级用法

git stash 高级用法摘要:1.git stash 的基本概念2.git stash 的常用命令3.git stash 的高级用法4.git stash 的使用场景5.git stash 的注意事项正文:git stash 是Git 中的一个非常有用的功能,它可以帮助我们在工作中保存当前的进度,以便在稍后重新开始工作。

git stash 的基本概念是创建一个暂存区,将工作区和暂存区的内容保存到Git 栈中,然后在需要的时候将这些内容恢复到工作区。

git stash 的常用命令有以下几个:1.git stash:将当前的工作区的内容保存到Git 栈中。

2.git stash pop:从Git 栈中恢复最近的一次保存的内容,恢复工作区的相关内容。

3.git stash list:显示Git 栈内的所有备份。

4.git stash clear:清空Git 栈。

除了这些常用命令外,git stash 还有一些高级用法:1.使用git stash -p 命令,可以在保存暂存区时,自动将暂存区的内容推送到远程仓库。

2.使用git stash -k 命令,可以指定保存暂存区的内容的压缩级别。

3.使用git stash -u 命令,可以在恢复暂存区时,将暂存区的内容与工作区的内容合并。

git stash 的使用场景主要包括:1.在开发过程中,遇到紧急的bug 需要修改时,可以使用git stash 将当前的工作进度保存起来,然后切换到另一个分支去修改bug。

2.在开发过程中,需要临时离开工作场所时,可以使用git stash 将当前的工作进度保存起来,以便在回来后继续工作。

3.在开发过程中,需要将工作进度备份,以便在稍后的某个时间点恢复工作时,可以使用git stash 将当前的工作进度保存起来。

在使用git stash 时,需要注意以下几点:1.使用git stash 命令时,最好将暂存区的内容推送到远程仓库,以便在恢复暂存区时,可以确保工作区的内容与远程仓库的内容一致。

GIT:常用分支相关命令(gitbranch)

GIT:常⽤分⽀相关命令(gitbranch)在开发过程中⼀般会⽤到Git进⾏版本管理,操作本地分⽀并与远程仓库交互是⾮常常见的操作。

branch分⽀是指在开发主线中分离出来的,做进⼀步开发⽽不影响到原来的主线。

Git存储的不是⼀系列的更改集,⽽是⼀系列快照,当你执⾏⼀次commit时,git存储⼀个commit对象,它包含⼀个指针指向你当前需要提交的内容的快照。

master分⽀是在git init命令运⾏时默认创建⼀个分⽀,并命名为master。

查看分⽀git branch // 列出本地已经存在的分⽀,当前分⽀会⽤ * 标记git branch -r // 查看远程仓库的分⽀列表git branch -a // 查看所有分⽀列表(包含本地和远程分⽀)git branch -vv // 查看本地分⽀对应的远程分⽀git branch -v // 查看⼀个分⽀的最后⼀次提交git branch --merged // 查看哪些分⽀已经合并到当前分⽀git branch --no-merged // 查看所有未合并⼯作的分⽀创建分⽀git branch dev // 创建名为dev的分⽀(创建分⽀时需要是最新的环境,创建分⽀但依然停留在当前分⽀上)提交本地分⽀git push origin dev删除分⽀git branch -d dev // 删除本地dev分⽀git branch -D dev // dev分⽀还没合并⼊当前分⽀,所以要⽤-D参数才能删除掉git push origin --delete dev // 删除远程dev分⽀git push origin // dev删除远程dev分⽀更新本地的远程分⽀列表git remote update origin --prune重命名分⽀git branch -m oldName newName // 给分⽀重命名切换分⽀/* 操作⽂件&nbsp;*/git checkout fileName // 放弃单个⽂件的修改git checkout .&nbsp; // 放弃当前⽬录的修改/* 操作分⽀ */git checkout master // 将分⽀切换到mastergit branch -b master // 如果分⽀存在则只切换分⽀,若不存在则创建并切换到master分⽀,repo start是对git checkout -b这个命令的封装,将所有仓库的分⽀都切换到master,master是分⽀名,/* 查看帮助 */git checkout --help拉取分⽀git checkout dev // 将远程分⽀dev拉取下来到本地dev分⽀git pull dev // 拉取远程分⽀dev中内容git checkout -b test origin/test_remote // 将远程分⽀test_remote拉取下来到本地test分⽀git fetch origin // 同步远程服务器的数据到本地合并分⽀/* 合并流程 */git checkout test // 切换到test分⽀git pull // 从远程仓库拉取最新代码到本地testgit checkout dev // 切换到当前分⽀ devgit merge test // 将test分⽀拉取下来的代码合并到dev/* ----------- */git merge --abort // 如果git merge的时候出现冲突,可以执⾏这个命令取消merge。

常用 Git 命令清单 - 阮一峰的网络日志


三、增加/删除文件
# 添加指定文件到暂存区 $ git add [file1] [file2] ... # 添加指定目录到暂存区,包括子目录 $ git add [dir] # 添加当前目录的所有文件到暂存区 $ git add . # 添加每个变化前,都会要求确认 # 对于同一个文件的多处变化,可以实现分次提交 $ git add ‐p # 删除工作区文件,并且将这次删除放入暂存区 $ git rm [file1] [file2] ... # 停止追踪指定文件,但该文件会保留在工作区 $ git rm ‐‐cached [file] # 改名文件,并且将这个改名放入暂存区 $ git mv [file‐original] [file‐renamed]
十、其他
# 生成一个可供发布的压缩包 $ git archive
一、新建代码库
# 在当前目录新建一个Git代码库 $ git init # 新建一个目录,将其初始化为Git代码库 $ git init [project‐name] # 下载一个项目和它的整个代码历史 $ git clone [url]
Байду номын сангаас
二、配置
Git的设置文件为 .gitconfig ,它可以在用户主目录下(全局配置),也可以在项目目录下(项目配置)。
常用 Git 命令清单
作者: 阮一峰 日期: 2015年12月 9日 我每天使用 Git ,但是很多命令记不住。 一般来说,日常使用只要记住下图6个命令,就可以了。但是熟练使用,恐怕要记住60~100个命令。
下面是我整理的常用 Git 命令清单。几个专用名词的译名如下。
Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库

git log用法

git log用法Git是目前最流行的分布式版本控制系统之一,它具有强大的版本管理功能和分支管理能力。

而git log命令是用来查看项目的提交历史记录的,它可以显示项目中的所有提交、作者信息、提交时间等关键信息。

本文将详细介绍git log命令的用法,包括基本用法、常用选项和实际应用场景等。

一、git log基本用法1. 命令格式git log [选项] [分支名]2. 查看提交记录在项目的根目录下打开终端或命令行窗口,输入git log命令即可查看项目的提交历史记录。

默认情况下,git log会以提交时间的倒序显示所有提交记录。

3. 显示提交信息在git log的输出中,每个提交都会显示一些关键信息,包括提交哈希值、作者、提交时间和提交消息等。

这些信息可以帮助我们了解每个提交的详细情况。

4. 快捷键在查看git log的输出时,可以使用一些快捷键进行快速导航,比如使用j和k键上下移动、使用enter键查看更多细节等。

这些快捷键可以提高浏览提交历史的效率。

二、git log常用选项1. --onelinegit log --oneline选项会以简洁的方式显示提交历史记录,每个提交只占一行。

这个选项在查看大型项目的提交历史时非常有用,可以节省屏幕空间并提高浏览效率。

2. -ngit log -n选项可以限制显示的提交数量,可以通过指定一个数字来控制显示的提交记录数量。

比如git log -n 5表示只显示最近的5个提交记录。

3. --authorgit log --author选项可以根据作者的名字过滤提交历史记录,只显示符合条件的提交。

比如git log --author "John"表示只显示由作者名为"John"的提交记录。

4. --since和--untilgit log --since和git log --until选项可以按照时间范围过滤提交历史记录。

Git常用命令之stash简单使用

Git常⽤命令之stash简单使⽤需求场景:两个分⽀branch new 和 branch old ⼀⽼的⼀新的两个分⽀。

在new分⽀开发⼀部分突然中途插⼊ old分⽀要做⼀些功能修复直接切换分⽀会导致new分⽀所做修改被带⼊打开的old分⽀。

---我们想要的效果:1:new 分⽀的修改不带⼊old分⽀2:old分⽀处理完成后还可以切回new分⽀继续进⾏开发任务⽅案⼀:直接将new分⽀的修改commit后切换到old分⽀即可(这种⽅式更适⽤与⼩阶段性开发完毕情况)⽅案⼆:使⽤git stash命令。

(适⽤于开发⼀半,中途切换)⽤法⼀:在new分⽀下使⽤git stash这样会将 new分⽀的修改暂存起来但是没有保存修改信息如果有多条stash则难以区分⽤法⼆:在new分⽀下:使⽤git stash save "message信息" 暂存new分⽀修改的同时⾃⼰可以添加这次暂存修改的备注------查看当前分⽀有多少stash暂存列表git stash list----在有暂存的情况下,取出最近⼀次的暂存修改以在本次修改的基础上继续⼯作git stash pop ---这种⽅式会在取出最近⼀次暂存修改后删除 stash或者git stash apply stash@{0}--这种⽅式在取出最近⼀次暂存后不会删除该暂存。

----在有多个暂存的情况下,取出历史某⼀个暂存的修改以在那次修改的基础上继续⼯作git stash apply stash@{x} 注:x为 git stash list 查到的,x为0时为最近⼀次的修改暂存。

----在两个暂存之间切换⼯作注意要rollback后再取出,否则会报错,导致暂存取出失败。

报错⽰例(error: Your local changes to the following files would be overwritten by merge:cib-cls/src/main/resources/application-dev.yamlPlease commit your changes or stash them before you merge.Aborting)---清除所有的git stashgit stash clear。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 git init # 初始化本地git仓库(创建新仓库)
git config --global user.name "xxx" # 配置用户名
git config --global user.email "xxx@xxx.com" # 配置邮件
git config --global color.ui true # git status等命令自动着色
git config --global color.status auto
git config --global color.diff auto
git config --global color.branch auto
git config --global color.interactive auto
git clone git+ssh://git@192.168.53.168/VT.git # clone远程仓库
git status # 查看当前版本状态(是否修改)
git add xyz # 添加xyz文件至index
git add . # 增加当前子目录下所有更改过的文件至index
git commit -m 'xxx' # 提交
git commit --amend -m 'xxx' # 合并上一次提交(用于反复修改)
git commit -am 'xxx' # 将add和commit合为一步
git rm xxx # 删除index中的文件
git rm -r * # 递归删除
git log # 显示提交日志
git log -1 # 显示1行日志 -n为n行
git log -5
git log --stat # 显示提交日志及相关变动文件
git log -p -m
git show dfb02e6e4f2f7b573337763e5c0013802e392818 # 显示某个提交的详细内容
git show dfb02 # 可只用commitid的前几位
git show HEAD # 显示HEAD提交日志
git show HEAD^ # 显示HEAD的父(上一个版本)的提交日志 ^^为上两个版本 ^5为上5个版本
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 git tag # 显示已存在的tag
git tag -a v2.0 -m 'xxx' # 增加v2.0的tag
git show v2.0 # 显示v2.0的日志及详细内容
git log v2.0 # 显示v2.0的日志
git diff # 显示所有未添加至index的变更
git diff --cached # 显示所有已添加index但还未commit的变更
git diff HEAD^ # 比较与上一个版本的差异
git diff HEAD -- ./lib # 比较与HEAD版本lib目录的差异
git diff origin/master..master # 比较远程分支master上有本地分支master上没有的
git diff origin/master..master --stat # 只显示差异的文件,不显示具体内容
git remote add origin git+ssh://git@192.168.53.168/VT.git # 增加远程定义(用于push/pull/fetch)
git branch # 显示本地分支
git branch --contains 50089 # 显示包含提交50089的分支
git branch -a # 显示所有分支
git branch -r # 显示所有原创分支
git branch --merged # 显示所有已合并到当前分支的分支
git branch --no-merged # 显示所有未合并到当前分支的分支
git branch -m master master_copy # 本地分支改名
git checkout -b master_copy # 从当前分支创建新分支master_copy并检出
git checkout -b master master_copy # 上面的完整版
git checkout features/performance # 检出已存在的features/performance分支
git checkout --track hotfixes/BJVEP933 # 检出远程分支hotfixes/BJVEP933并创建本地跟踪分支
git checkout v2.0 # 检出版本v2.0
git checkout -b devel origin/develop # 从远程分支develop创建新本地分支devel并检出
git checkout -- README # 检出head版本的README文件(可用于修改错误回退)
git merge origin/master # 合并远程master分支至当前分支
53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 git cherry-pick ff44785404a8e # 合并提交ff44785404a8e的修改
git push origin master # 将当前分支push到远程master分支
git push origin :hotfixes/BJVEP933 # 删除远程仓库的hotfixes/BJVEP933分支
git push --tags # 把所有tag推送到远程仓库
git fetch # 获取所有远程分支(不更新本地分支,另需merge)
git fetch --prune # 获取所有原创分支并清除服务器上已删掉的分支
git pull origin master # 获取远程分支master并merge到当前分支
git mv README README2 # 重命名文件README为README2
git reset --hard HEAD # 将当前版本重置为HEAD(通常用于merge失败回退)
git rebase
git branch -d hotfixes/BJVEP933 # 删除分支hotfixes/BJVEP933(本分支修改已合并到其他分支)
git branch -D hotfixes/BJVEP933 # 强制删除分支hotfixes/BJVEP933
git ls-files # 列出git index包含的文件
git show-branch # 图示当前分支历史
git show-branch --all # 图示所有分支历史
git whatchanged # 显示提交历史对应的文件修改
git revert dfb02e6e4f2f7b573337763e5c0013802e392818 # 撤销提交dfb02e6e4f2f7b573337763e5c0013802e392818
git ls-tree HEAD # 内部命令:显示某个git对象
git rev-parse v2.0 # 内部命令:显示某个ref对于的SHA1 HASH
git reflog # 显示所有提交,包括孤立节点
git show HEAD@{5}
git show master@{yesterday} # 显示master分支昨天的状态
git log --pretty=format:'%h %s' --graph # 图示提交日志
git show HEAD~3
git show -s --pretty=raw 2be7fcb476
git stash # 暂存当前修改,将所有至为HEAD状态
79 80 81 82 83 84 85 git stash list # 查看所有暂存
git stash show -p stash@{0} # 参考第一次暂存
git stash apply stash@{0} # 应用第一次暂存
git grep "delete from" # 文件中搜索文本“delete from”
git grep -e '#define' --and -e SORT_DIRENT
git gc
git fsck

相关文档
最新文档