github使用教程(ubuntu)
- 安装git:
$ sudo apt-get install git
- 配置用户和密码
$ git config --global user.name "用户名"
$ git config --global user.email "邮箱"
邮箱是github的注册邮箱
此时,home目录下会新建一个.gitconfig文件,用来存用户名和邮箱
- 为github账号添加SSH Keys
- 生成Keys
$ ssh-keygen -t rsa -C "github注册邮箱"
系统会提示key的保存位置(一般是~/.ssh)和指定口令,保持默认,连续三次回车即可
- 复制SSH Key到github
$ cat ~/.ssh/id_rsa.pub
会出现一堆字符,以ssh-rsa开头,以邮箱为结尾,降这堆字符复制。
登录github->Settings->SSH and GPG Keys->New SSH key添加
- 测试是否连接成功
$ ssh -T git@github.com
会有个提示,直接输入yes即可
-
在github上建一个库
右上角+号,New repository
输入库名(Repository name),描述(Description),选Public,(Add a README file选不选都行,就是新建一个介绍这个项目的文本),然后点Create repository。
然后会进入这个库,会出现
Quick setup — if you’ve done this kind of thing before or HTTP/SSH +网址
记住后面的这个网址,后面会用到。 -
创建一个本地仓库
- 建立一个文件夹并转到这个文件夹
$ mkdir JavaProject
$ cd JavaProject
- 初始化git仓库
$ git init //初始化仓库
$ ls -a
使用ls -a查看初始化后的文件夹,发现多了一个.git文件
- 创建一个readme.txt文件
echo "This is a simple practise" > readme.txt
- 查看当前版本库的状态
$ git status
在Untracked files(未跟踪文件)下,会出现红色的readme.txt文件,代表此文件还未被git所管理
- 将文件加入缓冲区
$ git add readme.txt
将文件加入缓冲区,如果你确定所有的修改都需要提交,可以使用
git add .
来加入所有修改。现在用git status
查看,将看到文件名变为绿色。
- 提交修改到本地仓库
$ git commit -m "This is my first commit via Git!!!"
使用上述语句来提交修改,-m后面所带的参数是本次的提交信息,一般用来记录本次提交的主要意图。
上述操作都只是将项目提交到本地仓库,下面才开始正式提交到远程仓库。
- 提交项目到远程仓库
$ git remote add origin 前面记录的网址
这时的网址是之前在github上建立库时复制的,这条语句是用来提交项目的
$ git pull origin
将远程仓库中的文件先下拉到本地项目中,如果没有下拉,而是直接使用push提交可能会出现![rejected] master -> master (non-fast- forward)error: failed to push some ref…文件冲突问题
$ git pull --rebase origin master
本地与远程代码合并
$ git push origin master
最后提交到远程仓库
- 其他操作
git log
查看历史提交记录,每个记录都有提交id,作者和提交日期、
git branch
查看当前有哪些分支,当然,因为我们没有创建任何一个分支,所以目前只有一个master分支。
git checkout -b feature
创建一个名为feature的分支,再用git branch 查看一下
git pull origin master --allow-unrelated-histories
如果出现fatal: 拒绝合并无关的历史 的错误,用这条语句可以解决。