Using Git and GitHub on Mac.

感谢

在Mac上使用Git与Github

创建本地的Gitlab


安装Git

在shell中安装Git。使用Homebrew直接安装Git即可,命令为: $ brew install git

将自己的程序加入Git进行管理

  1. 进入到自己程序的根目录。

  2. 初始化Git目录。使用命令:$ git init 进行初始化。

  3. 设置自己的git信息

    $ git config --global user.name "yourname"

    $ git config --global user.email "youremail""

  4. 编写**.gitignore文件。touch .gitignore .gitignore文件的作用是,设置不需要提交的文件。如IDE的配置文件,编译后的文件等,都需要加入到.gitignore**文件中管理以确保不提交。详细的配置可自行查询,或者使用我的

  5. 向git仓库中添加源文件。

    $ git add .

    $ git commit -m "Initial commit"

  6. 这样应该就完成了向本地Gitlab的第一次提交。重启Xcode后,Source Control下的选项应该都可用了。

关联Github


由于我之前在本地配置过一次Github,昨天换了新账号后再使用,一直各种出错,查询了各种官方文档,折腾了很久才最终搞定,所以这部分写的详尽一些。

与Github关联,有两种方式,SSH方式与HTTP方式。SSH使用证书进行管理,配置好后,每次提交无需再输入用户名密码,本文主要讲解SSH方式的配置。

这一步的操作前,需要先完成上一步的创建本地的Gitlab

注册Github并创建自己的repository

官方网站注册Github账号。

注册完成后,点击右上角的 + ,选择New repository创建自己的repository。

创建完成后,进入创建的repository,记住自己的Github id与repository id。

生成并关联本地的SSH密钥

需要在本地生成RSA密钥,并与Github网站进行配对。

这一步比较关键,主要参考的是官方指南

  1. 查看是否已有SSH key。执行命令: $ ls -al ~/.ssh ,如有,则备份删除。如无,则继续执行。

  2. 生成密钥。执行命令: $ ssh-keygen -t rsa -C "your_email@your_email.com",注意替换。

  3. 会提示输入保存文件的名字,以及密码。文件名字可不选直接回车,系统会默认生成名为id_rsa的相关文件。

  4. 将生成的密钥添加到ssh-agent,使用如下两个命令:

    $ eval "$(ssh-agent -s)"

    $ ssh-add ~/.ssh/id_rsa

  5. 执行命令: $ ls -al ~/.ssh ,可以看到有id_rsaid_rsa.pub两个文件。

  6. 打开id_rsa.pub文件,并复制下全部内容(注意不要多复制空格)。也可以使用这个命令进行复制: $ pbcopy < ~/.ssh/id_rsa.pub

  7. 登录Github网站,登录后,进入Setting—SSH keys—Add SSH Key,将复制的内容添加至此。即可完成SSH key的添加。

  8. 测试一下。输入命令: $ ssh -T [email protected] ,如果出现如下提示,则说明成功了。Hi username! You’ve successfully authenticated, but GitHub does not provide shell access.

提交代码至Github

最后一步,终于可以将代码提交到Github了。

  1. 添加你的Git地址。在终端中执行如下命令,注意替换your-github-id与your-repository-id

    $ git remote add origin [email protected]:your-github-id/your-repository-id.git

  2. 上面的origin是为远程的Github repository在本地定义的用于关联的别名。添加完成后,可以在Xcode的Source Control—your project name—Configure your project name—Remotes看到已经添加的Remote repository。

  3. 提交至Github的master分支。执行如下命令: $ git push origin master

  4. 上一步提交时如果失败,提示冲突,则先将远程的内容先pull下来后再重新push。很多教程没有提到这一点,我就是在这里耽误了很久。

    $ git pull origin master

    $ git push origin master

这样,我们就完成了至Github的提交。进入网站中查看自己的repository,应该就可以看到自己的源代码了。

日后的提交

可以通过命令行提交:

1
2
3
$ git add *
$ git commit -m "write comment here"
$ git push origin master

也可以通过Xcode的Source Control中的Pull与Push命令同步或提交。


Using Git and GitHub on Mac.
http://example.com/2024/02/13/Using-Git-and-GitHub-on-Mac/
作者
Justin
发布于
2024年2月13日
许可协议