下面是对最近遇到 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 的处理方法之后,觉得“这个人很有想法,要远远好于我自己的“,
<只不过 master branch 和 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 来查看不同分支下面的代码,而不用创建多个文件夹里面分别放着多个分支的文件了,
创建多个文件夹里面分别放着多个分支的文件了来组织代码,不仅会造成很大的存储空间冗余,查阅起来还十分的浪费时间。
阅读(973) | 评论(0) | 转发(0) |