ios git命名相关问题和解析

问答式

1.如何使用码云这个git代码托管网站进行代码管理

    答:参考网站    点击打开链接


2.git 最常用命令有哪些 

  答:

   1)git status   查看当前工作区状态

   2)git add . (注意有个.)或者 git add --all   将该项目下所有文件提交本地工作区

   3)git commit -m 'commit messages'       提交修改到本地工作区

   4)git pull origin master  从远程代码仓库主分支拉去代码到本地

   5)git push origin master  将本地工作区代码发布到远程代码仓库主分支


3.多人协作开发,遇到冲突如何解决?

    答:在 git pull origin master 这个命令执行的时候,如果两个开发者A 和 B 修改了同一个文件,比如A 修改了 AppDelegate.h 文件,已经发布到代码仓库。B也修改了该文件,B在执行前面命令的时候会提示merge,如果二者修改的不是同一行代码,自动merge文件,没有问题,如果修改的是同一行代码,则会提示conflicts 冲突,需要进入文件,查看具体内容,自己编辑冲突的文件,编辑完成之后依序执行 2中  2)-> 3)-> 4)-> 5)命令提交发布代码。


4.如何回滚某一个文件到制定版本 ?

    答:比如文件 AppDelegate.h 

             1)执行命令 git log TestBlockProject/AppDelegate.h,结果如下

     

commit ff1d35f9bb7682b3afed90e834dae67c2f1e9272
Author: [email protected] <[email protected]>
Date:   Fri May 26 17:45:35 2017 +0800

    roll back

commit dcfd42f71b54cc1d2d395b9231ea7a16c414436d
Merge: 18c1fee 61329d6
Author: [email protected] <[email protected]>
Date:   Fri May 26 17:34:11 2017 +0800

    fix conflicts

commit 18c1fee2793ba825d58e2eb93b08ab2250e2ea79
Author: [email protected] <[email protected]>
Date:   Fri May 26 17:30:10 2017 +0800

    change appdelegate.h

commit 61329d6934c0c1651d054dfa657041525859b1d8
Author: [email protected] <[email protected]>
Date:   Fri May 26 17:26:18 2017 +0800

       2)回滚到制定版本(18c1fee2793ba825d58e2eb93b08ab2250e2ea79)  

         git reset 18c1fee2793ba825d58e2eb93b08ab2250e2ea79 TestBlockProject/AppDelegate.h

         解释:这个命令相当于将本地工作区 TestBlockProject/AppDelegate.h 这个文件的最新版本重置为 18c1fee2793ba825d58e2eb93b08ab2250e2ea79z这个历史版本,这并未影响远程仓库代码

       4)git checkout TestBlockProject/AppDelegate.h 

         解释:从本地工作区获取最新的 AppDelegate.h 文件,会覆盖当前项目中的旧文件 因为18c1fee2793ba825d58e2eb93b08ab2250e2ea79z这个已经是最新版本文件了,当前项目中的文件反而是旧的文件了

       3)依序执行 2中  2)-> 3)-> 4)-> 5)命令提交发布代码即可。

5.git如何回滚整个项目到制定版本

       1)git reflog,结果如下

7eed2f7 HEAD@{0}: revert: Revert "ss00"
bbf0bce HEAD@{1}: commit: ss00
7a2fdc2 HEAD@{2}: commit (merge): confilt
a1043ee HEAD@{3}: commit: zss
323cc27 HEAD@{4}: pull origin master: Fast-forward
1bdb4d7 HEAD@{5}: commit: jmrollback
ff1d35f HEAD@{6}: commit: roll back
dcfd42f HEAD@{7}: pull origin master: Fast-forward
61329d6 HEAD@{8}: commit: change appdelegate.h
3ada6c8 HEAD@{9}: pull origin master: Fast-forward
d2fc364 HEAD@{10}: commit: init
45af61d HEAD@{11}: clone: from [email protected]:zsschina/iostest.git

         注意,如果git log显示不全面,只是前几个,不同开发者的reflog不同,这个只是本地工作空间的log记录。

        2)git revert 到指定版本,比如想到a1043ee版本,则需要 git revert 7a2fdc2

           注意这个仅仅是本地代码回滚,并不是远程仓库代码修改了。这个过程中想回滚到的版本可能和本地版本有冲突,需要解决冲突再提交。

        3) git push origin master 发布代码即可


发布了18 篇原创文章 · 获赞 1 · 访问量 7678

猜你喜欢

转载自blog.csdn.net/leitingdulante/article/details/72772560
今日推荐