git打包导出某次或之后的代码
发表于|更新于|Git
|浏览量:
git打包导出某次或之后的代码
打包某次commit:
1
git diff-tree -r --no-commit-id --name-only f4710c4a32975904b00609f3145c709f31392140 | xargs tar -rf update_20240529.tar
使用命令把某次节点后的文件导出:
window下:1
git diff f4710c4a32975904b00609f3145c709f31392140 HEAD --name-only | xargs tar -rf update_20240529.tar
文章作者: Fleming Chen
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Fleming's Blog!
相关推荐
2017-02-08
git子模块项目开发指南
git子模块项目开发指南一、从远程仓库中克隆到本地(带有子模块)git clone –recurse-submodules 父仓库地址如: 1git clone --recurse-submodules "ssh://1016739@10.10.1.127:29418/app/android/Platin_ElderCare" && scp -p -P 29418 1016739@10.10.1.127:hooks/commit-msg "Platin_ElderCare/.git/hooks/" 如果忘记加–recurse-submodules,可以在clone后执行 12git submodule init // 初始化子模块git submodule update // 更新子模块与主仓库中的子模块代码同步 或者 1git submodule update --init 嵌套的(子仓库中包含子仓库) 1git submodule update --init --recursive 如果修改了.gitmodules,...
2017-02-08
git常用指令
git常用指令基本提交流程123456git add .git commit -m "提交信息"git push origin HEAD:refs/for/developgit pull origin <branch>git branch --set-upstream-to=origin/<branch> <branch> 生成ssh key 使用 ed25519(推荐,安全性更高): 1ssh-keygen -t ed25519 -C "your_email@example.com" 使用 RSA(兼容性更好): 1ssh-keygen -t rsa -b 4096 -C "your_email@example.com" -C 后面是注释,通常填写你的邮箱。 如何查看某一个提交修改的内容1git show 提交id 清除未被跟踪的文件 删除所有未跟踪的文件1git clean -f 删除所有未跟踪的文件和目录1git clean -fd 删除包括.gitignore...
2017-07-07
Repo常用指令
Repo常用指令在使用 Git 进行版本控制时,repo 是一个由 Google 提供的工具,主要用于管理多个 Git 仓库(特别是在 Android 开发中)。它是对 Git 的封装,简化了多仓库项目的管理。 下面是一些常用的 repo 命令及其用途: 🌐 初始化和同步repo init初始化一个新的 repo 客户端。通常会指定一个 manifest 仓库地址。 1repo init -u <manifest仓库URL> [-b <分支名>] [-m <manifest文件名>] 示例: 1repo init -u https://android.googlesource.com/platform/manifest -b main -m default.xml repo sync从远程仓库下载代码并同步到本地。 1repo sync 常用选项: repo sync -c:只同步当前分支。 repo sync -j4:使用 4 个线程并行同步,加快速度。 repo sync --no-tags:不下载标签,节省带宽。 📁 项...
2017-09-13
Repo upload的细节
Repo upload的细节1git config --get remote.gerrit.review 输出: 1ssh://gerrit 要正确设置review url 到底应该是SSH还是HTTP???12cd ~/falconrepo forall -c 'git config --replace-all remote.gerrit.review http://10.10.1.127:30090/' 然后验证: 12cd prebuilts/sdkgit config --get remote.gerrit.review ✅ 应该输出: 1http://10.10.1.127:30090/ 🔁 建议对 cust/app/orion-sipclient 也执行一次验证和修复! 🧠 为什么 review URL 必须是 HTTP,不能是 SSH?因为: commit-msg hook 是从 http://.../tools/hooks/commit-msg 下载的 Gerrit Web UI 链接是 http://.../c/12345...
2017-02-25
git补丁
git补丁在Git中,打patch(生成补丁)和应用patch(应用补丁)是两个常见的操作,主要用于代码的修改分享或版本间的差异同步。下面是具体步骤: 生成Patch(打Patch) 确定变更范围:首先,确保你的工作区是干净的(没有未提交的更改),然后使用git add将你想要包含在补丁中的文件暂存起来。 创建补丁: 如果你只需要针对最后一次提交创建补丁,可以使用如下命令:1git format-patch -1 HEAD 这条命令会为最近的一次提交生成一个补丁文件。 若要为特定的提交ID创建补丁,可以替换HEAD为你想打补丁的提交ID。 如果需要对一系列的提交创建补丁,可以通过指定起始和结束提交ID来完成,例如:1git format-patch sha1^..sha2 如果你已经修改了一些文件,但还不想将这些更改提交到仓库中,并希望为这些未提交的更改创建一个补丁。首先使用git add将某些更改暂存,再使用如下命令,例如:1git diff --cached > staged-changes.patch 应用Patch(应用补丁) 获取补丁文件:确保你已经获得...
2017-02-08
git合并开发分支且无需提交历史
git合并开发分支且无需提交历史如果你想要将开发分支(例如 dev 分支)合并到主分支(例如 master 分支),但不保留开发分支的所有提交历史,并且希望在 master 分支上创建一个新的提交,你可以使用 Git 的 merge 命令结合 --squash 选项。以下是具体步骤: 确保你在 master 分支: 1git checkout master 将 master 分支更新到最新的状态: 1git pull origin master 使用 --squash 选项合并 dev 分支的更改: 1git merge --squash dev 在此之后,Git 会应用 dev 分支的所有更改,但是不会自动创建新的提交或移动 HEAD。你需要手动创建一个新提交来保存这些更改: 1git commit -m "Merge dev branch changes into master as a single commit" 最后,推送更新后的 master 分支到远程仓库: 1git push origin master 使用 --squash 选项...
公告
欢迎来到我的博客,有任何疑问可以随时联系我交流讨论!






