设为首页 收藏本站
查看: 1499|回复: 0

[经验分享] git保护

[复制链接]

尚未签到

发表于 2018-1-13 06:09:19 | 显示全部楼层 |阅读模式
  因为机缘巧合,我接手了一个项目,阴差阳错的,我竟然又成了这个项目的半个负责人。而这个项目呢,由我们团队和别的团队一起合作,这就遇到一个问题了,我们的核心技术在上传到项目中的时候就会暴露给别的团队了,那么,如何解决这个问题呢?我请教了一下师兄,师兄就给我指了一条明路,给git创建分支。
  闲话不多说,直接进入主题吧。
  这个项目是在阿里云平台上建立的,我建好项目、设置完ssh key后(具体可以网上搜),就开始创建分支了(如果你是windows,命令行代码都是在git bash里面敲的)
  1.首先,从阿里云上把你的project拉取下来:git clone git@code.aliyun.com:zhangmei/demo.git
  2.然后,重定向到你拉取代码的位置: cdC:/Users/admin/Downloads/demo.git
  3.为你的repository进行初始化: git init
  4.创建并切换到dev分支:git checkout -b dev
  5.推送:git push origin dev
  按此方法再创建一个分支main,将你自己团队的代码放到main分支,别的团队放到dev,就可以实现代码隔离了。
  另附一份git管理常用命令(别的地方贴的。。):
1) 远程仓库相关命令检出仓库:$ git clone git://github.com/jquery/jquery.git查看远程仓库:$ git remote -v添加远程仓库:$ git remote add [name] [url]删除远程仓库:$ git remote rm [name]修改远程仓库:$ git remote set-url --push [name] [newUrl]拉取远程仓库:$ git pull [remoteName] [localBranchName]推送远程仓库:$ git push [remoteName] [localBranchName] * 如果想把本地的某个分支test提交到远程仓库,并作为远程仓库的master分支,或者作为另外一个名叫test的分支,如下:$ git push origin test:master         // 提交本地test分支作为远程的master分支$ git push origin test:test              // 提交本地test分支作为远程的test分支 2)分支(branch)操作相关命令查看本地分支:$ git branch查看远程分支:$ git branch -r创建本地分支:$ git branch [name] ----注意新分支创建后不会自动切换为当前分支切换分支:$ git checkout [name]创建新分支并立即切换到新分支:$ git checkout -b [name]删除分支:$ git branch -d [name] ---- -d选项只能删除已经参与了合并的分支,对于未有合并的分支是无法删除的。如果想强制删除一个分支,可以使用-D选项合并分支:$ git merge [name] ----将名称为[name]的分支与当前分支合并创建远程分支(本地分支push到远程):$ git push origin [name]删除远程分支:$ git push origin :heads/[name] 或 $ git push origin :[name]  * 创建空的分支:(执行命令之前记得先提交你当前分支的修改,否则会被强制删干净没得后悔)$ git symbolic-ref HEAD refs/heads/[name]$ rm .git/index$ git clean -fdx 3)版本(tag)操作相关命令查看版本:$ git tag创建版本:$ git tag [name]删除版本:$ git tag -d [name]查看远程版本:$ git tag -r创建远程版本(本地版本push到远程):$ git push origin [name]删除远程版本:$ git push origin :refs/tags/[name]合并远程仓库的tag到本地:$ git pull origin --tags上传本地tag到远程仓库:$ git push origin --tags创建带注释的tag:$ git tag -a [name] -m 'yourMessage' 4) 子模块(submodule)相关操作命令添加子模块:$ git submodule add [url] [path]    如:$ git submodule add git://github.com/soberh/ui-libs.git src/main/webapp/ui-libs初始化子模块:$ git submodule init  ----只在首次检出仓库时运行一次就行更新子模块:$ git submodule update ----每次更新或切换分支后都需要运行一下删除子模块:(分4步走哦)1) $ git rm --cached [path]2) 编辑“.gitmodules”文件,将子模块的相关配置节点删除掉3) 编辑“ .git/config”文件,将子模块的相关配置节点删除掉4) 手动删除子模块残留的目录 5)忽略一些文件、文件夹不提交在仓库根目录下创建名称为“.gitignore”的文件,写入不需要的文件夹名或文件,每个元素占一行即可,如targetbin*.db  除了这种命令行式的创建和管理分支的方法,你还可以下载图形界面的管理分支的软件,下载地址,http://www.sourcetreeapp.com/download/,操作很简单,我就不多说了,嘻嘻

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-434505-1-1.html 上篇帖子: git的使用(包括创建远程仓库到上传代码到git的详细步骤以及git的一些常用命令) 下篇帖子: SVN为什么比git更好
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表