2016 - 2024

感恩一路有你

git pull会覆盖本地代码吗 把公司代码上传到了git上,被leader发现了怎么办?

浏览量:2553 时间:2021-03-11 16:16:10 作者:admin

把公司代码上传到了git上,被leader发现了怎么办?

这种问题可大可小,往小了说吧,这个只是一个小事,一点点代码而已,只要删掉以后,就没有什么问题了。

往大了说,这个就是信息安全的事件了,可以说是泄露了公司的机密。

可能我们很多人还没有养成这种信息安全的意识。

但是,由于现在社会上信息安全的事件频繁的发生,就连Facebook都出现了用户资料泄露的情况,所以,作为一个程序员,就更应该在自己的心里绷一根弦了。

说一个真实的故事吧,也是就在我身边发生的事情。

事情的起因其实是一个很小的事件。

当时,我们公司的框架是自动生成代码注释的,代码注释里面会包含项目的名称和编辑代码的人名(根据创建文件的人的域账号生成的)。

然后,某一个程序员写了一个小的公共业务组件,里面用到了一些有意思的技术。他将这些内容放到了自己的博客里面,用于技术的交流。

因为当时我是在外企,我们的项目也是给涉密的国外政府门或者银行来做的。

这个程序员在复制代码的时候呢,很不信的将项目的名称注释一起贴到了博客里面,我们的客户在Google的时候,就看到了这篇博客。

然后雷霆之火就出现了

客户认为这个是非常严重的问题了,我项目的代码被公然的放到了互联网上,这个还是被我发现了的,那是不是还有很多没有被我发现的内容?

客户则认为这个完全是管理的不严谨和员工意识不足的问题,而且是很大的安全隐患。解除合同赔钱都是小事了,还要起诉我们企业。

我们是一个500强的外企,这个事情要是闹大了,那股票肯定一片绿啊!

从中国地区的CEO,到集团总部的CEO,每个人都还是给客户做工作,赔礼道歉等等。

然后,外国也和中国一样,无证电工引起了大楼着火。

所以最后这个程序员就成为了牺牲品,程序员这次泄露代码的行为被定义为个人行为,客户直接起诉了这个程序员。

最终的结果我就不得而知了,不过这个程序员的履历上,肯定有一个一辈子无法磨灭的黑点了。

所以,对于这种信息安全或者机密泄露的事件,我们一定要注意,没发现,那就是芝麻绿豆的事情,被发现,那你的人生可能会变得不可预知了。

如何找回被覆盖的代码?

这个,找到你之前的commit,拉倒pull本地,然后创建一个新的branch,然后和最新的branch进行merge,人工对代码进行手工的操作来同时保留双方的代码或者和冲突的开发者讨论如何解决这个冲突并保留双方代码。

任何版本控制工具,这个是基本功能,上网收一下,有很多解决方案的。

如何解决git提交代码冲突?

你pull下来git会提示有冲突啊,然后你冲突的文件,寻找用=====隔开的两部分,HEAD是你的内容,另外一部分是repos的内容,然后手工修改保留你想要的部分,在git add 和git commit然后再git push上去就好了。多人协作经常都会遇到冲突的,要习惯解决冲突的值……);Range_lookup为一逻辑值,如果

git的pull和clone有什么区别?

git clone是把整个git项目拷贝下来,包括里面的日志信息,git项目里的分支,你也可以直接切换、使用里面的分支等等。clone是本地没有repository时,将远程repository整个下载过来。pull是本地有repository时,将远程repository里新的commit数据(如有的话)下载过来,并且与本地代码merge。

git pull相当于git fetch和git merge。其意思是先从远程下载git项目里的文件,然后将文件与本地的分支进行merge。pull是本地有repository时,将远程repository里新的commit数据(如有的话)下载过来,并且与本地代码merge。clone是本地没有repository时,将远程repository整个下载过来。

Git push,merge,pull,fetch,rebase各自在什么场景下使用?

基本上顺序是这样的:

你修改好了代码,先要提交

git commit -am “commit message"

然后有两种方法来把你的代码和远程仓库中的代码合并

a. git pull这样就直接把你本地仓库中的代码进行更新但问题是可能会有冲突(conflicts),个人不推荐

b. 先git fetch origin(把远程仓库中origin最新代码取回),再git merge origin/master(把本地代码和已取得的远程仓库最新代码合并),如果你的改动和远程仓库中最新代码有冲突,会提示,再去一个一个解决冲突,最后再从1开始

如果没有冲突,git push origin master,把你的改动推送到远程仓库中

至于rebase很容易和merge混淆,因为就结果而言,两条命令是类似的,具体请看

http://git-scm.com/book/zh/ch3-6.html

svn提交代码会造成冲突?那么git代码提交呢?

你可以稍微补充一下这一块的知识哦,先把自己写的代码add和commit提交至版本库,然后pull一下服务器上的代码,status查看一下有没有冲突,没有直接push,有的话解决status中提示的冲突,重新add.commit.push提交至远程版本库。

git pull会覆盖本地代码吗 git撤销本地commit idea git解决合并冲突

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。