赞
踩
git clone -b develop [git地址]
1. git clone [git地址]
2. cd 到git下来的master目录
3. git branch -r 查看分支,没有切换目录的话这一步会出错
4. git clone -b develop [git地址]
git clone --branch [tag] [git地址]
或者
git clone [git地址]
git checkout tags/<tag_name>
方法一 本地下载下来的就是存在有该分支的
1. cd 切换到该分支下的目录,git checkout查看是否是否与所需分支一致
2. git add.
3. git commit -m "v1"
4. git push origin develop
方法二 本地下载下的只有master
1. 本地新建分支,与远程分支同名 git branch develop
2. 切换本地分支 git checkout develop
3. git add.
4. git commit -m "v1"
5. git push origin develop
获取最新版本 有两种 拉取 和 获取 pull 和 fetch
git pull 从远程拉取最新版本 到本地 自动合并 merge git pull origin master
git fetch 从远程获取最新版本 到本地 不会自动合并
注意:不建议使用pull拉取最新代码,因为pull拉取下来后会自动和本地分支合并
git fetch origin master:temp #从远程仓库的master分支下载到本地master并新建一个temp分支
git diff temp #查看区别 最好确认一下修改再合并
git merge temp
git branch -d temp #删除临时分支
#尽量不要直接用这个
git pull origin/master
由于本地的代码也修改了,远程的代码也修改了,合并的时候会出现冲突,解决冲突的办法:
git log // 查看提交历史
git branch -D develop //删除develop分支,删除前先切换到Master分支上
#克隆主仓库,在克隆主仓库后,可以运行以下命令来初始化和更新子模块,执行完这一步就拉取到子模块代码:
git clone [url]
git submodule init
git submodule update
#修改子模块,分为两种情况
1. 在父模块仓库修改子模块,一旦在子模块修改,如果没有其他分支,子模块仓库会产生一个临时的分离头,所以需要先建立分支进行保存再提交
cd [submodule]
git branch local #新建local分支,分离头会自动合入该分支,后续修改就会自动在所选的分支
git checkout main #切换到主分支
git merge local #合并local到主分支
git status #可以看到已经修改
git add .
git commit -m "test"
git push origin main #提交到主分支更改
cd ..
git submodule update --remote #然后需要更新父模块的指向
git add .
git commit -m "test"
git push #提交到主分支更改
2.在子模块仓库进行了修改,需要同步子模块的修改:
git submodule update --remote
然后执行
git add .
git commit -m "Modify submodule"
git push #更新父模块
#git添加子模块
git submodule add <子仓库1的URL> <子仓库1的目录路径>
#提交更改:在主仓库的根目录下运行以下命令来提交子模块的更改:
git commit -m "Add submodules"
#第一次构建需要修改分支指向,git submodule update --remote默认分支是master,但gitlab默认是main
打开父仓库的 .gitmodules 文件,在每个模块下添加 branch = main,类似
[submodule "colmap"]
path = colmap
url = https://github.com/example/colmap.git
branch = main
如果已经初始化,可能需要重新初始化
git submodule deinit --all
git submodule init
git submodule update --remote
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。