What's Git?
Git 是一款分布式版本控制工具。分布式版本控制工具相比与本地式、集中式(SVN)版本控制工具,具有以下优点:任意一台本地电脑上的数据是服务器数据的克隆,是完全镜像的服务器数据,服务器数据如果遭到损坏,可以利用本地数据进行恢复;本地具有完整的提交历史,可以检出文件的各个版本,并且可以完全脱离网络进行提交,待有网络之后将提交与其他成员的提交合并,然后推送到服务器。
分布式版本控制工具简图Git 安装
前往 Git 官网]进入 Download 找到相应的平台,下载安装即可。
Linux 用户,使用各发行版相应的安装包管理器安装。例如 Ubuntu 用户使用 apt-get 安装:$ sudo apt-get install git
宿主机了 CMD 和 GUI 两种环境。安装完成之后,在桌面或者目录中,右键菜单会有快捷入口,如下图。Android Studio 或者其他 Git GUI 客户端,可以配置好 Git 环境变量直接使用。
Mac 用户,下载对应的dmg文件安装(系统自带)。 验证 Git 是否可用:$ git --version
SSH Key 配置
访问 Git 服务器时(你想拉代码?),需要验证身份。在 Git 服务器中,我们可以使用 HTTP 和 SSH 协议访问服务器。SSH 协议可以帮你省去访问服务器时输入账户和密码的麻烦。生成 SSH Key
生成新的 SSH Key 时,最好先检查一下是否已有 SSH Key 存在,否则生成时可能会被覆盖(一般会有提示是否覆盖),SSH Key 一般存放在用户目录下的 .ssh 目录中。使用命令 ssh-keygen -t rsa -C "your_email@youremail.com" 生成新的 SSH Key,会生成两个文件,一个私钥(id_rsa),一个公钥(id_rsa.pub)。参数简要说明:
-t 选项,用来指定密钥类型,有 RSA 和 DSA 两种,如果没有指定默认生成 SSH-2的 RSA 密钥。 -C 选项,给密钥添加一个的注释。 -b bits,指定密钥长度。RSA密钥最少1024位,默认是2048位;DSA密钥必须恰好是1024位。一般不使用该选项。输入 ssh-keygen -t rsa -C "your_email@youremail.com" 命令之后,会有三个过程提示:
提示输入需要保存密钥的文件名:这里的文件名指的是包含完整路径的文件名。如果直接输入回车,会使用默认路径保存( 用户目录/.ssh/id_rsa);如果你需要使用自定义的名字,记得输入完整的路径名,否则会保存在当前目录下。 提示输入密码:建议直接输入回车,不输入密码,这样使用起来比较方便并且不容易出现密码出错的异常。 提示确认密码:和上一步骤类似。下面是一个生成 SSH Key 的示例,使用默认文件(用户目录/.ssh/id_rsa)存储,并且未输入 SSH Key 的密码。即输入命令后,直接输入三次回车。$ ssh-keygen -t rsa -C "your_email@youremail.com" Generating public/private rsa key pair. Enter file in which to save the key (/Users/Jay/.ssh/id_rsa): Created directory '/Users/Jay/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /Users/Jay/.ssh/id_rsa. Your public key has been saved in /Users/Jay/.ssh/id_rsa.pub. The key fingerprint is: SHA256:oaxFgb2SxyiIRgfT7M981hTrxqd4kaZ1hI+S5QiqdUk your_email@youremail.com The key's randomart image is: +---[RSA 2048]----+ | o+ o. | | ..+. .. . | |o.o +... + | |o...+E+. * . | |. .*o* S = | | o O * % + | | o o o B = | | . o o | | . | +----[SHA256]-----+
将 SSH Key 添加到 Git 服务器账户中
复制 SSH Key 的公钥的文本内容(id_rsa.pub,可以用文本编辑器打开),在 Git 服务器账户个人中心找到类似 SSH Keys 入口,添加一个新的 SSH Key。测试 SSH Key
完成上述步骤之后,可以使用以下命令来测试是否配置成功:$ ssh -T git@techgit.meitu.com # 把 techgit.meitu.com 换成要访问的服务器域名
对于新仓库,如何开始你的工作
初始化仓库并提交到git服务器。$ git init $ git commit -m "initial commit" $ git remote add origin git@github.com:foo/foorepo.git $ git push -u origin master
对于已存在的仓库,如何开始你的工作
对于已存在的仓库,克隆下来即可。$ git clone git@github.com:foo/foorepo.git