美文网首页iOS开发笔记
Git代码管理-操作命令

Git代码管理-操作命令

作者: 祥子_HelloWorld | 来源:发表于2019-08-05 18:03 被阅读0次

    Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能。Git有很多优势,其中之一就是远程操作非常简便。

    代码提交一般有五个步骤:
    1. 查看目前代码的修改状态
    2. 查看代码修改内容
    3. 暂存需要提交的文件
    4. 提交已暂存的文件
    5. 同步到服务器
    git 命令:
    1. 克隆代码
      git clone 代码仓库地址 文件夹名
    2. 提交代码基本步骤
      2.1 git status (查看本次修改的文件列表)
      2.2 git add 要提交的文件名 (添加单个要提交的文件) /git add . (提交git status中看到的所有修改)
      强制提交 git add -f TKApp/TKApp.xcodeproj/project.xcworkspace/xcuserdata/
      2.3 git commit -m”注释” -a (这个命令我的理解是提交到本地仓库,没查过)
      2.4 git pull (down远程仓库的更新)
      (有冲突要解决冲突)
      2.5 git push (提交合并后的代码)
    分支相关:

    git checkout --track origin/xed 从服务器下载分支
    git pull origin xed 下载代码
    git push origin xed 提交代码

    git branch 1.1.3appstore 创建分支
    git branch 查看分支
    git branch -a 查看本地和远程分支
    git checkout 1.1.3appstore 切换分支
    git merge origin/im 合并分支

    git branch -d XXXXX 删除本地分支
    git push origin :branch-name 删除远程分支
    冒号前面的空格不能少,原理是把一个空分支push到server上,相当于删除该分支。

    git信息查看和日志查看:

    git log
    git show
    git show branch
    git show index
    git show ref

    回退代码

    pull 错分支之后 用git log 查看日志,用
    git reset --hard be2e1378b6aeaac9b45893be1cb2faa423570e8c 命令回退。
    如果想撤销commit但又想保留本地代码,可以用下面命令撤销
    git reset --soft HEAD~n (n代表第几次提交)

    git fetch:相当于是从远程获取最新版本到本地,不会自动merge
    git checkout . 本地所有修改的。没有的提交的,都返回到原来的状态
    git stash 把所有没有提交的修改暂存到stash里面。可用git stash pop回复。
    git reset --hard HASH 返回到某个节点,不保留修改。
    git reset --soft HASH 返回到某个节点。保留修改

    详解

    1. 查看目前代码的修改状态

    提交代码之前,首先应该检查目前所做的修改,运行git status命令

    • 已暂存 (changes to be committed)

    new file //表示新建文件
    modified //表示修改文件
    deleted //表示删除文件

    • 已修改 (changed but not updated)

    modified //表示修改文件
    deleted //表示删除文件
    另外,git 给出了可能需要的操作命令,git add/rm, gitcheckout --

    • 未跟踪 (untracked files)
    2. 查看代码修改的内容

    git diff <file>
    比较某文件与最近提交节点的差异。
    注意:如果该文件已暂存,那么应该使用git diff –cached<file>

    git diff <hashcode> <hashcode> <file>
    比较某文件在提交节点a,节点b的差异。
    技巧:如果省略后面一个hashcode,则默认表示与上一提交节点比较。(也可以利用^运算符)

    3. 暂存需要提交的文件

    如果是新建的文件
    则git add <file>

    如果是修改的文件
    则git add <file>

    如果是删除的文件
    则 git rm <file>

    4. 提交已暂存的文件

    git commit
    注意注释填写规范。

    git commit --amend
    修改最近一次提交。有时候如果提交注释书写有误或者漏提文件,可以使用此命令。

    5. 同步到服务器

    同步到服务器前先需要将服务器代码同步到本地
    命令: git pull
    如果执行失败,就按照提示还原有冲突的文件,然后再次尝试同步。
    命令:git checkout -- <有冲突的文件路径>

    同步到服务器
    命令: git push origin <本地分支名>

    如果执行失败,一般是没有将服务器代码同步到本地导致的,先执行上面的git pull命令。

    参考:http://www.ruanyifeng.com/blog/2014/06/git_remote.html

    相关文章

      网友评论

        本文标题:Git代码管理-操作命令

        本文链接:https://www.haomeiwen.com/subject/yjfvdctx.html