MAC OS git客户端安装及操作

1. 下载安装mac os 版本的git客户端及相关可视化软件

    1.1 从git官网上下载匹配的git客户端.pkg格式的包,然后在系统偏好设置-> 安全性与隐私中打开系统默认禁止安装的这个程序,然后根据步骤安装。

   1.2 安装好了之后,我发现和Windows不一样,windows有小乌龟的客户端,Mac os有sourceTree,和小乌龟一样,合并代码功能更强大。但是,小编这里偷懒一下,直接在命令行终端立马操作。

2. 使用git命令行终端进行文件操作

    2.1  检查git安装成功版本          

 git --version或者which git 

    2.2 从远程服务器clone项目

git clone *.git

    稍等一会儿之后会让你输入username和password,然后download代码成功,之后就可以愉快地码代码。

    2.3 git常用的命令

  1.  
    git init 初始化仓库
  2.  
    git remote 连接远程仓库
  3.  
    git clone 克隆远程仓库
  4.  
    git add 添加文件或者修改文件,commit以及push之前使用
  5.  
    git pull 从远程仓库拉取新数据
  6.  
    git push 将本地仓库新增或修改文件推送到远程仓库
  7.  
    git commit 提交新增或修改文件到当前本地仓库中
  8.  
    git log 当前仓库提交过的日志信息
  9.  
    git status 当前仓库版本状态
  10.  
    git branch 查看本地分支命令,相关增删查操作
  11.  
    git checkout 使用远程仓库最后一个版本完全覆盖当前仓库内容/选择分支branch
  12.  
    git diff 对比版本内容
  13.  
    git merge 合并版本内容
  14.  
    git branch -a 查看远程所有分支
  15.  
    git branch *** 创建分支***
  16.  
    git push origin *** 将***分支推送到远程分支
  17.  
    git branch *** 切换到***分支
  18.  
    git branch -d *** 删除本地分支***
  19.  
    git push origin :version 删除远程版本
  20.  
    git branch -r -d origin/branch-name and git push origin :branch-name 删除远程分支

 2.3 合并其他分支到master

  1.  
    将开发分支代码合并到master
  2.  
     
  3.  
    1. 首先从开发分支切换到master分支上,执行 git checkout master ;
  4.  
     
  5.  
    2. 然后将master最新代码拉取到本地来,执行 git pull origin master ;
  6.  
     
  7.  
    3. 接下来将开发分支代码合并到master上,执行 git merge dev ;
  8.  
     
  9.  
    4. 然后查看状态,执行 git status ;
  10.  
     
  11.  
    5. 最后,将本地开发分支提交的所有commit,push到远程的master上, 执行 git push origin master ;

2.4 git命令其他操作

  1.  
    本地分支重命名
  2.  
     
  3.  
    git branch -m old-branchname new-branchname
  4.  
     
  5.  
    远程分支重命名 (假设本地分支和远程对应分支名称相同)
  6.  
     
  7.  
    1.重命名远程分支对应的本地分支
  8.  
     
  9.  
    git branch -m old-local-branch-name new-local-branch-name
  10.  
     
  11.  
    2.删除远程分支
  12.  
     
  13.  
    git push origin :old-local-branch-name
  14.  
     
  15.  
    3.上传新命名的本地分支
  16.  
     
  17.  
    git push origin new-local-branch-name: new-local-branch-name
  18.  
     
  19.  
     
  20.  
    本地commit撤销
  21.  
     
  22.  
    1. 使用git log 查看commit日志
  23.  
     
  24.  
    2. git reset --hard commit_id
  25.  
     
  26.  
    3. git push origin HEAD --force
  27.  
     
  28.  
    git reset --mixed <默认方式> 不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息
  29.  
     
  30.  
    git reset --soft 回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可
  31.  
     
  32.  
    git reset --hard 彻底回退到某个版本,本地的源码也会变为上一个版本的内容
  33.  
     
  34.  
    查看提交版本号列表
  35.  
     
  36.  
    git log --pretty=oneline

2.5  git命令tag操作

  1.  
    git tag -l <版本号> 打印所有符合条件的tag日志
  2.  
     
  3.  
    例如: git tag -vl 1.*.* 为搜索一级版本为1的版本
  4.  
     
  5.  
    git tag 打印所有tag
  6.  
     
  7.  
    git checkout <版本号> 查看对应tag状态
  8.  
     
  9.  
    git tag <版本号>-light 创建轻量tag
  10.  
     
  11.  
    例如:git tag v1.0.0-light
  12.  
     
  13.  
    git tag -a <版本号> -m "<备注信息>" 创建带标注的tag
  14.  
     
  15.  
    例如:git tag -a v1.0.0 -m "this is v1.0.0 description"
  16.  
     
  17.  
    git tag -a <版本号> <SHA值> -m "<备注信息>" 给特殊提交的commit添加tag标注
  18.  
     
  19.  
    例如:git tag -a v1.0.0 0c3b62d -m "Release Edition v1.0.0"
  20.  
     
  21.  
    git tag -d <版本号> 删除本地tag
  22.  
     
  23.  
    例如:git tag -d v1.0.0
  24.  
     
  25.  
    git push origin --tags 推送所有tag到服务器
  26.  
     
  27.  
    git push origin <版本号> 推送指定tag到服务器
  28.  
     
  29.  
    例如:git push origin v1.0.0
  30.  
     
  31.  
    git push origin --delete v1.0.0 Git版本 > V1.7.0
  32.  
     
  33.  
    git push origin :refs/tags/v1.0.0 旧版本Git
  34.  
     
  35.  
     

注意:

    有时候我们选择一个特定文件夹无法打开终端,那就需要在能打开终端的情况下使用Linux命令行操作文件操作超级权限。

  1.  
    sudo -s 获取绝对用户权限
  2.  
    cd * 进入*目录
  3.  
    ls (-a/-A) 显示当前路径下所有文件(隐藏的)
  4.  
    pwd 显示当前绝对路径
  5.  
    mkdir * 创建*文件夹
  6.  
    man * 查看*命令手册

参考资料:

Mac OS Git安装

git安装使用

原文地址:https://www.cnblogs.com/sunyllove/p/13500287.html