年年有"余"

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 2845|回复: 1

如何在MacOS中安装git,使本地项目与gitHub同步

[复制链接]
  • TA的每日心情

    2024-10-15 10:05
  • 签到天数: 372 天

    [LV.9]以坛为家II

    发表于 2017-12-29 15:18:38 | 显示全部楼层 |阅读模式
    本帖最后由 Sian 于 2017-12-29 15:20 编辑

    1、下载安装git

    1.1、https://www.git-scm.com/ 对于MacOS来讲一般不需要安装,系统已经自带了该程序;


    2、在github上创建一个项目

    2.1、申请github帐号,完善个人资料什么的就带过来;
    2.2、在浏览器的右上角有个“+”图标,第一个选项“New repository”就是创建一个新的项目;

    WX20171229-142610@2x.png

    2.3、点击该选项后会打开一个项目创建的基本信息输入页面,如下图所示,基本说明在图有也有标记;

    WX20171229-143015@2x.png

    3、在新项目中添加部署证书

    3.1、什么是部署证书?当你在提交或同步代码时,服务器怎么知道你是合法用户?所以该证书就是本地机器和服务端相互信任的一种验证机制;
    3.2、打开终端,生成本地证书
    [AppleScript] 纯文本查看 复制代码
    SianMac2:~ yusian$ ssh-keygen -t rsa -b 4096 -C "yusian@163.com"
    Generating public/private rsa key pair.
    Enter file in which to save the key (/Users/yusian/.ssh/id_rsa): 
    3.3、默认都按回车即可,最终会生成id_rsaid_rsa.pub两个文件(友情提示不要在照抄,路径中有你当前机器的用户名)
    3.4、用文本编辑器打开id_rsa.pub或在终端中直接cat /Users/yusian/.ssh/id_rsa.pub,再将文本或输出的内容复制3.5、在第2步中创建了一个项目,进入该项目的主页,打开项目设置(最后那个Setting选项),参照下图所示

    WX20171229-142404@2x.png

    3.6、在Deloy Key中点击右边的Add Deloy Key,Title随便写,用于标识这个证书是谁的,Key的内容就是刚刚你复制的那段文本,而下面那个Allor write access指是否可写,如果你要提交代码那就要勾选,如果你只同步那就不勾选;
    3.7、一切准备工作都搞完!

    4、本地项目提交与同步

    4.1、进入项目文件的根目录输入git status命令,应该会提示没有git项目
    [AppleScript] 纯文本查看 复制代码
    SianMac2:Demo yusian$ git status
    fatal: Not a git repository (or any of the parent directories): .git
    4.2、git初始化
    [AppleScript] 纯文本查看 复制代码
    SianMac2:Demo yusian$ git init
    Initialized empty Git repository in /Users/yusian/Documents/Vue/Demo/.git/
    4.3、再次输入git status应该会列出当前Untracked的文件及目录。补充一下:什么是Untracked,track是跟踪的意思,在git中每一个文件的增删改后都要进行track,表明你已知会当前文件有变动,有多少个文件Untracked表明本次变动一共涉及了多少个文件及哪些文件,第一次提交那肯定是所有的文件。
    [AppleScript] 纯文本查看 复制代码
    SianMac2:Demo yusian$ git status
    On branch master
    
    No commits yet
    
    Untracked files:
      (use "git add <file>..." to include in what will be committed)
    
            App.vue
            main.js
            source/
    
    nothing added to commit but untracked files present (use "git add" to track)
    4.4、如果对文件进行track操作呢?使用命令git add xxx,文件名可用*进行模糊匹配
    [AppleScript] 纯文本查看 复制代码
    SianMac2:Demo yusian$ git add *
    SianMac2:Demo yusian$ git status
    On branch master
    
    No commits yet
    
    Changes to be committed:
      (use "git rm --cached <file>..." to unstage)
    
            new file:   App.vue
            new file:   main.js
            new file:   source/test.js
    
    4.5、使用git config --list命令可以查看当前git配置
    [AppleScript] 纯文本查看 复制代码
    SianMac2:Demo yusian$ git config --list
    credential.helper=osxkeychain
    core.excludesfile=~/.gitignore_global
    core.repositoryformatversion=0
    core.filemode=true
    core.bare=false
    core.logallrefupdates=true
    core.ignorecase=true
    core.precomposeunicode=true
    4.6、添加远程git服务器地址
    [AppleScript] 纯文本查看 复制代码
    SianMac2:Demo yusian$ git remote add origin [url=https://github.com/yusian/demo.git]https://github.com/yusian/demo.git[/url]
    4.7、如果项目中没有README.md则还需要添加一个README.md文件
    [AppleScript] 纯文本查看 复制代码
    SianMac2:Demo yusian$ echo "# demo" >> README.md
    SianMac2:Demo yusian$ git add README.md
    4.8、在保证所有的文件都tracked了之后,则进行commit操作
    [AppleScript] 纯文本查看 复制代码
    SianMac2:Demo yusian$ git commit -m "first commit"
    4.9、提交到服务器
    [AppleScript] 纯文本查看 复制代码
    SianMac2:Demo yusian$ git push -u origin master
    4.10、从github上同步代码下来则使用git pull命令即可
    [AppleScript] 纯文本查看 复制代码
    SianMac2:Demo yusian$ git pull


  • TA的每日心情

    2024-10-15 10:05
  • 签到天数: 372 天

    [LV.9]以坛为家II

     楼主| 发表于 2018-1-2 14:41:17 | 显示全部楼层
    补充几条git常用命令
    [AppleScript] 纯文本查看 复制代码
    // 回退到某个版本
    git checkout -
    // 查看版本记录(-p查看修改详情)
    git log -p
    // git三步曲
    modified staged committed
    
    // 标签(v1)
    git tag -a v1 -m "描述"
    // 查看标签
    git show v1
    // 回退标签
    git checkout v1
    
    // 创建分支(xxx)
    git branch xxx
    // 切换分支
    git checkout xxx
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    手机版|小黑屋|Archiver|iOS开发笔记 ( 湘ICP备14010846号 )

    GMT+8, 2024-12-22 12:22 , Processed in 0.054455 second(s), 21 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

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