GitHub是一家公司,由 Chris Wanstrath, PJ Hyett 与 Tom Preston Werner 三位开发者在2008年4月创办;
2008年4月10日,GitHub正式成立,地址:How people build software · GitHub ,主要提供基于git的版本托管服务。截止目前,GitHub 已经发展成全球最大的开源社区。
Git 是一款免费、开源的分布式版本控制系统,由Linux 发明者 Linus Torvalds 开发;
GitHub 是提供基于 Git 的版本托管服务,就是说GitHub 上托管的所有项目代码都是基于 Git 来进行版本控制的,So,Git 只是 GitHub 上用来管理项目的一个工具,而GitHub 的功能远不止此。
1、去 GitHub 官网「How people build software · GitHub」注册「Sign Up」个账号;
2、创建自己的项目(点击顶部导航栏的 + 可以快速创建一个项目);
Mac:https://sourceforge.net/projects/git-osx-installer/(一般Mac会自带Git)
Windows:https://git-for-windows.github.io/
Linux:apt-get install git
注:本文所有的命令都是在Linux上操作的
命令行输入git,出现以下提示,Git安装成功:
我们现在在root目录下新建一个test,然后进入到test目录下:
mkdir test # 创建test文件夹 cd test # 切换到test目录 touch a.txt # 新建a.txt文件如图
当前目录还不是一个 Git 仓库,
git init # 初始化git仓库Untracked files ,就是说 a.txt 这个文件还没有被跟踪,还没有提交在 git 仓库,提示你可以使用 git add 去操作你想要提交的文件
git status # 查看状态 git add # 添加到仓库缓存中 git commit -m 'first commit' # 正式进行了第一次提交 git log # 查看所有产生的 commit 记录 git add & git commit # 提交的合并操作 git branch a #创建a分支 git checkout a # 切换到a分支上 git checkout -b a #合并 与 切换 同时操作 git merge a # 合并a分支 git branch -d a # 删除分支 git branch -D a # 强制删除a分支 git tag v1.0 # 创建标签git checkout v1.0 # 切换标签SSH是一种网络协议,用于计算机之间的加密登录。大多数 Git 服务器都会选择使用 SSH 公钥来进行授权,想要在 GitHub 提交代码的第一步就是要先添加 SSH key 配置;
Linux和Mac都默认安装了SSH,命令行输入ssh查看
ssh-keygen -t rsa #指定 rsa 算法生成密钥输入 ssh-keygen -t rsa,指定 rsa 算法生成密钥,接着连续三个回车键(不需要输入密码),然后就会生成两个文件 id_rsa 和 id_rsa.pub , id_rsa 是密钥,id_rsa.pub 就是公钥
Linux/Mac 系统 在 ~/.ssh 下,win系统在 C/Documents and Settings/username/.ssh 下,都是隐藏文件
git push origin master # 把本地代码推到远程master分支 git pull origin master # 把远程最新代码更新到本地 # 一般在 push 之前先 pull ,这样不容易冲突。 git clone git@github.com:/Clint-cc/test.git #将test项目clone到本地我们每一次commit都会产生一条log,这条log标记了提交人的姓名与邮箱,以便其他人方便的查看与联系提交人,所以在进行提交代码的第一步就是要设置自己的用户名与邮箱
git config —global user.name "clint-cc" git config —global user.email "clint1801@163.com"以上进行了全局配置,有时候我们的某一个项目想要用特定的邮箱,这个时候只需切换到你的项目, --global 参数去除,重新执行一遍
有些频繁的操作,我们可以给命令起个简短的别名,下次用别名执行
git config global alias.co checkout # 给命令起别名PS: 比较清晰,分支走向明显的命令
git log --graph --pretty=format:'%Cred%h%Creset - %C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative但是每次如果要输如这么一大串那就不方便了,这时我们就可以用alias命令简化
git config --global alias.lg "log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative"以后直接输入git lg就行了
切换
git checkout develop #切换到 develop 分支 git checkout v1.0 #切换v1.0标签撤销
git checkout a.txt #把原文件还原(之前的操作撤销)PS:checkout 命令只能撤销还没有 add 进暂存区的文件
Git Flow 是一种比较成熟的分支管理流程
转载于:https://www.cnblogs.com/Utopia-Clint/p/10896006.html