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

[经验分享] [linux,git]在 linux 下面使用 github(3)

[复制链接]

尚未签到

发表于 2015-12-9 13:05:50 | 显示全部楼层 |阅读模式
下面是对最近遇到 git 命令相关的问题的解决方法记录:

1. 已经将源代码推送到远程库中,但是发现有很多地方并不完善,在完善本地程序代码之后,如何同步更新远程库中的代码呢?
   
解决方法: 使用push 做一下日常更新即可,首先应该知道的是,在你首次将代码 push 到远程库中之后,
库中的文件会自动的跟踪你的本地库中的文件,当二者出现不一致的情况,通过在本地命令行中输入 git status 命令将会显示出,你修改了那些内容。

比如说,你修改了一个空格或者是一个回车,这些都不能够称作是变动,在这种情况下提交
是不会有数据 push 到服务器端的。
也就是通过 git status 命令查询之后是不会显示出
当前 local 库中的文件有所变动的。
如果是修改了文件中的内容的话, 通过 git status
将会显示出来具体哪个文件发生了变动,

1.1 git add + (要更新远程库中的文件名称,如果因为一次性修改文件次数太多而忘记,输入 git status 来查看)

1.2 git commit -m '在这里输入此次修改的备注信息,比如说完善了哪些功能,补救了哪些 bug'

1.3 git push origin master  (注意: 这里的 origin 是你创建库的时候根据需要自己创建的)

这样就完成了一次日常的更新远程库的操作

2. 已经将源代码推送到远程库中,但是发现自己还有很多新的想法,但是却不想覆盖远程库中原有的程序代码?
解决方法:
            这种情况下,就需要创建一个分支 branch 了,创建分支的好处就是,可以基于原来的库中的代码进行修改,
            添加一些新的想法,但是却不用担心会影响原先库中的走向,对于一个基于 master(主库) 的分支 new_branch 有三个结局
           (可以将 master 理解为漫画与  而new_branch 理解为 漫画的TV 版)

            1. 与 master 并行同时取得喜人结果
            2. 在 coder 觉得继续这个分支 new_branch 有明显的理论错误,无法继续向下实现,就会将该 new_branch 进行删除

            3. 编写 master 的 coder 看了分支 new_branch 的处理方法之后,觉得“这个人很有想法,要远远好于我自己的“,
               
            此时,就会将该 new_branch 和自己的master 进行合并(merge)

          举例来说,我想把项目中的 torrentParser.cpp torrentParser.h 文件进行基于原来分支进行修改,
          但是我并不像把原来的项目文件进行覆盖。
那么,我只要执行如下的几步便可以实现:

           2.1 git branch  dev master ----------------------------> 创建了一个基于 master 的分支
           2.2 git checkout dev         ------------------------------->将当前的分支从 master 跳到 dev 分支上面
           2.3 git add (加上你修改之后并想上传到远程的文件)---------> 将文件添加到缓冲区中
           2.4 git push -u origin dev --------------------> 这个命令用于的是首次向远程库中提交分支的命令,
                                                                                         因为 dev 分支是基于 origin 中的master分支的,与master同属于 origin, 所以要特殊指明一下
   
        创建分支,的另外一个好处就是在本地可以通过 git checkout 来查看不同分支下面的代码,而不用创建多个文件夹里面分别放着多个分支的文件了,
        创建多个文件夹里面分别放着多个分支的文件了来组织代码,不仅会造成很大的存储空间冗余,查阅起来还十分的浪费时间。

运维网声明 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-148747-1-1.html 上篇帖子: Linux创始人Linus Torvalds访谈,Git的十年之旅 下篇帖子: 使用git send-mail提交Linux内核补丁
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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