使用Git进行版本控制:(2)在OS X系统上开始使用Git代码仓储

简介: 了解了基本的Git概念之后,现在我们开始讲Git应用到实际的工作中来。通常比较常用的代码托管网站有Github和BitBucket等,二者基本功能类似,在细节上稍稍有点区别。

了解了基本的Git概念之后,现在我们开始讲Git应用到实际的工作中来。通常比较常用的代码托管网站有Github和BitBucket等,二者基本功能类似,在细节上稍稍有点区别。首先,在开源世界的影响力上Github大幅领先,现在已经堪称是程序员的Facebook,而BitBucket则稍逊一筹;其次,GitHub在不购买增值服务情况下仅能建立公开代码库,即只能在上面开发开源项目,而BitBucket则可以免费建立多个私人代码库;第三,Github仅支持Git进行同步操作,而Bitbucket支持Git和Mercurial来同步。如果我们既有开发开源项目,也有开发保密的商业工程的需求,那么最好同时建立二者的账户并根据需求选择相应的代码库。


1、账号注册

Github和Bitbucket的网址如下:

Github:https://github.com/

BitBucket:https://bitbucket.org/

二者的注册过程只要有一个邮箱即可轻易完成,不再赘述。需要注意的是,最好可以使用同一个邮箱注册,这样在后面建立ssh秘钥的时候会省去很多的麻烦。


2、安装和配置Git

首先需要确定本机的操作系统上已经安装了Git和ssh-keygen的程序,在安装OS X系统时通常已经安装完成,如果没有还需要额外安装。

(1)、生成安装秘钥

在OS X的终端上,输入命令:

> cd ~/.ssh

此时,如果是从一个全新的电脑上开始配置的话,命令行通常会显示:No such file or directory,表示.ssh这个目录不存在,随后我们就将建立这个目录及其中的秘钥。如果该目录存在且有内容,则说明从前曾经生成过秘钥,可以将其备份并删除。

随后,输入以下命令:

> ssh-keygen -t rsa -C "your_email@example.com"
此时会使用命令中的邮箱,在/用户目录/.ssh/id_rsa中建立秘钥,命令行会显示以下内容:

Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
此时会要求输入密码,可以直接回车跳过。

按照默认设置,一路回车,最终终端会显示如下信息:

Your identification has been saved in /home/you_username/.ssh/id_rsa.
Your public key has been saved in /home/you_username/.ssh/id_rsa.pub.
The key fingerprint is:
01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db demo@example.com

(2)、将ssh秘钥添加到Github和Bitbucket

首先,需要将公钥的内容进行拷贝:

> cat id_rsa.pub | pbcopy
此后,id_rsa.pub的内容便被拷贝到了剪贴板中。

Github的ssh秘钥配置:




在接下来的页面中粘贴,并对这个ssk key进行命名;

BitBucket的秘钥配置:




在弹出页面中,将公钥拷贝到大空格中并设置key的名称。

这样,对Github和Bitbucket的SSH秘钥设置就完成了。


3、向代码仓库中提交代码

我们以将代码提交到Bitbucket中为例说明。向Github中提交代码的过程类似。

(1)在Bitbucket上建立代码仓库。

在完成上面的操作后,登陆Bitbucket,然后会发现下面有一个显眼的按键“创建一个仓库”,很明显,如果我们要提交代码的话,首先要在这里创建一个仓库。

创建的过程非常直观,只要输入仓库的名称、描述、访问级别、语言等信息就可以了。

(2)建立本地工程

首先需要选择一个保存本地代码的目录,并设置为git仓储的本地目录。

mkdir /path/to/your/project
cd /path/to/your/project
git init
git remote add origin git@bitbucket.org:YinWenjie/tutorial.git

(3)将本地工程向服务器推送

将在本地开发、修改完成的代码添加到该目录中,并提交到本地的git,最终push到Bitbucket的服务器上:

echo "Wenjie Yin" >> contributors.txt
git add contributors.txt
git commit -m 'Initial commit with contributors'
git push -u origin master
等待数据传输完成后,本地仓库中的代码就成功提交到了服务器上。




目录
相关文章
|
2月前
|
安全 搜索推荐 Android开发
移动应用与系统:探索开发趋势与操作系统优化策略####
当今数字化时代,移动应用已成为日常生活不可或缺的一部分,而移动操作系统则是支撑这些应用运行的基石。本文旨在探讨当前移动应用开发的最新趋势,分析主流移动操作系统的特点及优化策略,为开发者提供有价值的参考。通过深入剖析技术创新、市场动态与用户需求变化,本文力求揭示移动应用与系统协同发展的内在逻辑,助力行业持续进步。 ####
52 9
|
19天前
|
Devops Shell 网络安全
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
|
6天前
|
缓存 安全 Linux
Linux系统查看操作系统版本信息、CPU信息、模块信息
在Linux系统中,常用命令可帮助用户查看操作系统版本、CPU信息和模块信息
55 23
|
12天前
|
监控 搜索推荐 开发工具
2025年1月9日更新Windows操作系统个人使用-禁用掉一下一些不必要的服务-关闭占用资源的进程-禁用服务提升系统运行速度-让电脑不再卡顿-优雅草央千澈-长期更新
2025年1月9日更新Windows操作系统个人使用-禁用掉一下一些不必要的服务-关闭占用资源的进程-禁用服务提升系统运行速度-让电脑不再卡顿-优雅草央千澈-长期更新
2025年1月9日更新Windows操作系统个人使用-禁用掉一下一些不必要的服务-关闭占用资源的进程-禁用服务提升系统运行速度-让电脑不再卡顿-优雅草央千澈-长期更新
|
28天前
|
JSON iOS开发 数据格式
tauri2-vue3-macos首创跨平台桌面OS系统模板
自研Tauri2.0+Vite6+Pinia2+Arco-Design+Echarts+sortablejs桌面端OS管理平台系统。提供macos和windows两种桌面风格模式、自研拖拽式栅格引擎、封装tauri2多窗口管理。
108 3
|
1月前
|
安全 前端开发 Android开发
探索移动应用与系统:从开发到操作系统的深度解析
在数字化时代的浪潮中,移动应用和操作系统成为了我们日常生活的重要组成部分。本文将深入探讨移动应用的开发流程、关键技术和最佳实践,同时分析移动操作系统的核心功能、架构和安全性。通过实际案例和代码示例,我们将揭示如何构建高效、安全且用户友好的移动应用,并理解不同操作系统之间的差异及其对应用开发的影响。无论你是开发者还是对移动技术感兴趣的读者,这篇文章都将为你提供宝贵的见解和知识。
|
1月前
|
人工智能 搜索推荐 Android开发
移动应用与系统:探索开发趋势与操作系统演进####
本文深入剖析了移动应用开发的最新趋势与移动操作系统的演进历程,揭示了技术创新如何不断推动移动互联网生态的变革。通过对比分析不同操作系统的特性及其对应用开发的影响,本文旨在为开发者提供洞察未来技术方向的视角,同时探讨在多样化操作系统环境中实现高效开发的策略。 ####
27 0
|
2月前
|
测试技术 Android开发 开发者
移动应用与系统:涵盖移动应用开发、移动操作系统等相关话题####
本文深入探讨了移动应用开发的全过程,包括需求分析、设计、编码、测试以及发布等关键步骤。同时,还对当前主流的移动操作系统进行了简要介绍,并分析了它们之间的差异和各自的优势。通过实际案例,展示了移动应用开发的挑战与解决方案,旨在为读者提供一份全面的移动应用开发指南。 ####
|
2月前
|
人工智能 Android开发 数据安全/隐私保护
移动应用与系统:探索现代移动应用开发及操作系统的演变与未来趋势###
本文旨在深入探讨现代移动应用开发及移动操作系统的演变历程,并分析其未来的发展趋势。通过梳理移动应用从早期的简单工具到如今的多功能平台的转变过程,以及主流移动操作系统如iOS和Android的发展路径,本文揭示了技术创新如何不断推动移动生态系统的进步。此外,文章还讨论了当前面临的挑战及潜在的解决方案,为开发者和研究人员提供有价值的参考。 ###
|
2月前
|
vr&ar Android开发 数据安全/隐私保护
移动应用与系统:探索移动应用开发与移动操作系统的协同进化####
本文深入探讨了移动应用开发与移动操作系统之间的紧密关系,揭示了两者如何相互促进、共同发展。随着智能手机的普及和移动互联网的飞速发展,移动应用已成为人们日常生活中不可或缺的一部分。本文分析了当前主流移动操作系统的特点,以及移动应用开发的最新趋势和技术挑战,旨在为开发者提供一个全面的视角,以理解这一领域的复杂性和机遇。 ####