一、怎么样查看本地分支
1、如果你使用的是vscode可以直接查看
2、使用git命令查看本地分支
git branch
二、查看远程分支
1、使用如下git命令查看所有远程分支:
git branch -r
2、查看远程和本地所有分支:
git branch -a
三、拉取远程分支创建本地分支
1、使用如下命令:
git checkout -b 本地分支名x origin/远程分支名x
使用该方式会在本地新建分支x,并自动切换到该本地分支x。
采用此种方法建立的本地分支会和远程分支建立映射关系。
例如,你想要更新的远程分支是feature/110
那么你的命令就是
git checkout -b feature/110 origin/feature/110
Git中从远程的分支获取最新的版本到本地有这样2个命令:
1 git fetch:相当于是从远程获取最新版本到本地,不会自动merge
Git fetch origin master
git log -p masterorigin/master
git merge origin/master
以上命令的含义:
首先从远程的origin的master主分支下载最新的版本到origin/master分支上
然后比较本地的master分支和origin/master分支的差别
最后进行合并
上述过程其实可以用以下更清晰的方式来进行:
git fetch origin master:tmp
git diff tmp
git merge tmp
从远程获取最新的版本到本地的test分支上
之后再进行比较合并
2 git pull:相当于是从远程获取最新版本并merge到本地
git pull origin master
上述命令其实相当于git fetch 和 git merge
在实际使用中,git fetch更安全一些
因为在merge前,我们可以查看更新情况,然后再决定是否合并结束
公司的开发从SVN切换到Git,在SVN下,可以很方便的只获取版本库中一个或多个目录的内容,但是Git的克隆,默认是直接拉取整个远程仓库,如果项目比较大,大量和自己无关的内容也会拉到本地,占用很多硬盘空间。
在网上搜了一下,Git在17版本后,已经支持只Checkout部分内容,这个功能叫做 sparse checkout(稀疏检出)。
git config coresparsecheckout true
echo "BATInterview" >> git/info/sparse-checkout
只拉取BATInterview文件夹
此时会在sparse-checkout文件中追加
如果以后修改了 git/info/sparse-checkout,增加或删除部分目录,可以执行如下命令重新Checkout
$ git checkout master
或执行以下命令:
$ git read-tree -mu HEAD
仅仅修改设置,将coresparsecheckout设为false是不生效的,需要修改 git/info/sparse-checkout 文件,用一个”“号替代其中的内容,然后执行 checkout 或 read-tree 命令。
如果只拉取最近一次的变更,忽略以前的变更记录,在拉取时可以加参数depth,如git pull --depth=1 origin master
如果本地已经建了版本库,要使用这个功能,可以进入版本库的目录,执行以下命令
子目录的匹配在 sparse-checkout 文件中,如果目录名称前带斜杠,如/docs/
,将只匹配项目根目录下的docs目录,如果目录名称前不带斜杠,如docs/
,其他目录下如果也有这个名称的目录,如test/docs/
也能被匹配。而如果写了多级目录,如docs/05/
,则不管前面是否带有斜杠,都只匹配项目根目录下的目录,如test/docs/05/
不能被匹配。
通配符 “ “ (星号)在 sparse-checkout 文件中,支持通配符 “ “,如可以写成以下格式:
“!” (感叹号)在 sparse-checkout 文件中,也支持排除项 “!”,如只想排除排除项目下的 “docs” 目录,可以按如下格式写:
很像 gitignore的写法
要注意一点:如果要关闭sparsecheckout功能,全取整个项目库,可以写一个” “号,但如果有排除项,必须写”/ “,同时排除项要写在通配符后面。
参考: >
假如目前远端有3个分支 master,develop,develop_01
假如想基于devlop_01拉取一个新的分支develop_02有两种方法
1 git checkout devlop_01
2 git pull
3git checkout -b devlop_02
4git push origin devlop_02
也可以通过branch创建分支
1git checkout devlop_01
2git branch devlop_02
3git push origin devlop_02
安装git,不同系统安装命令不同
apt-get install git
yum install git
pkg install git
本地创建仓库,在需要的目录执行命令
git init
不执行这个,会找不到本地仓库位置,拉取了也找不到仓库存放。
拉取仓库的代码
git pull 远程仓库地址
发送代码到远程有点复杂,不过也挺简单
发送代码的时候,本地仓库里的代码必须和远程仓库里的代码一样,因为如果不一样,那就乱套了,所以要先拉取,覆盖到本地仓库,用网页在远程仓库新增或修改文件后,需要拉取代码覆盖本地没修改的,否则远程仓库拒绝接受。
添加要发送的文件
git add 文件名称
(git add )代表添加所有文件
添加要上传的文件之后,必须要给文件注释,否则远程仓库拒绝接收。
git commit -m "对文件的解释信息"
最后就可以发送了
git push 远程仓库地址 分支名
弄了2天才弄懂,790431300githubio
在有些时候,我们往往从github或者gitlab或者coding上面直接下载项目下来运行,但是这种情况往往没有使用git远程拉取来的安全(或者叫装逼),
所以这里我以gitLab为例子,说一下如何将远程服务器上的代码拉取到本地
首先,你得安装好git的软件 可以从网上获取
安装教程点击链接:git安装教程
安装好后,打开你的远程仓库的网站,当然你得发现你的项目组或者找到开源项目的东东
比如我的 gitlab:
然后随便打开一个项目,复制SSH链接:
接下来就可以开始在黑框里面搞了:
打开刚刚下载的
在某个本地位置建一个文件夹来放你的项目文件:
然后使用gitbash进入这个文件夹:
然后使用git命令以及刚才复制的ssh链接:
大功告成!!看一下你的本地文件夹有东西吗
tag是对历史一个提交id的引用,如果理解这句话就明白了
使用git checkout tag即可切换到指定tag,例如:git checkout v010
切换到tag历史记录会处在分离头指针状态,这个是的修改是很危险的,在切换回主线时如果没有合并,之前的修改提交基本都会丢失,如果需要修改可以尝试git checkout -b branch tag创建一个基于指定tag的分支,例如:git checkout -b tset v010 这个时候就会在分支上进行开发,之后可以切换到主线合并
进入工程的repo/manifests git库。
ls –l tagname 如果发现有tagname文件,执行如下下载命令:
命令格式:repo init –u remoutepaht –b branch –m tagname
例子:repo init -u ssh://gitserver –m tagname --no-repo-verify --repo-branch=stable
c) ls –l tagname 如果未发现有tagname文件,执行git tag –l | grep tagname,如果找到tagname,执行如下下载命令。
git checkout tagname defaultxml
repo sync
指定分支是远程分支吗?
如果指定分支是远程分支,那么可以执行的 *** 作是:
本地可以直接基于远程分支来新建一个分支,并切换到新分支上去。
git checkout -b 本地新分支名字 origin/远程分支名字
然后执行:
git pull
就行了。你就可以在新分支上进行代码开发了。
望采纳!
以上就是关于git拉取远程分支到本地(VScode)全部的内容,包括:git拉取远程分支到本地(VScode)、git拉取远程分支的两种方法有什么区别、Git只获取部分目录的内容(稀疏检出)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)