一、新建仓库
- git初始化 ,并设置remote地址
$ git init
$ git remote add github地址
2. 将全部文件加入git版本管理,提交文件并注释,推送到远程分支(git提交“三步走”)
$ git add .
$ git commit -m "注释"
$ git push
3.生成密钥,打印密钥,(添加密钥完成后)验证是否配置成功
$ ssh-keygen -t rsa -b 4096 -C "你的邮箱"
$ cat ~/.ssh/id_rsa.pub
$ ssh -T git@github.com //可用来测试ssh是否连接成功
二、github上已有仓库
1. git初始化, 并设置remote地址
$ git init
$ git remote add origin github 地址
2.获取远程仓库master分支上的内容,将当前分支设置为远程仓库的master分支(需要把远程仓库的文件先更新下来,之后就可以进行add
、commit
、push
等操作了)
$ git pull origin master
$ git branch --set-upstream-to=origin/master master
或者:直接拉取远程仓库和本地仓库兼容(建议刚下载到本地的仓库马上尽快开始这一步,要不然等文件全都修改好了,再提交会被拒绝,此时再拉取远程仓库少不了许多麻烦,要么是需要删掉多余文件,要么是更换分支,要么是强制覆盖远程仓库,要么是本地仓库被你用git reset --hard origin/master
给覆盖掉了):
$ git pull origin master --allow-unrelated-histories
3. 将全部文件加入git版本管理,提交文件并注释,推送到远程分支
$ git add .
$ git commit -m "注释"
$ git push
已有仓库上传更新
三、其他命令
1. 查看本地仓库与远程仓库关联情况
$ git remote -v
2.删除与远程仓库的关联
$ git remote rm github
3.切换到master分支
$ git checkout master
4.初始化目录,下载基本文件,如ignore
文件
$ git pull --rebase origin master
5.将本地区与暂存区进行比较,查看当前状态
$ git status
6.git push -u origin master
相当于git push origin master
+git branch --set-upstream-to=origin/master master
7.创建分支,切换分支,提交分支,上传分支
$ git branch 分支名
$ git checkout 分支名
$ git add --all
$ git commit -m "注释"
$ git push origin 分支名
8.将删除操作提交至暂存区(提交未跟踪、修改和删除文件,无论在哪个目录执行都会提交相应文件。)
$ git add --all
9.整分支合并
$ git cehckout master
$ git merge 分支名
$ git push
若出现Already up to date
的情况,需要用git reset --hard 分支名
和git push --force origin master
注意:强制则无历史。
10.git pull
是git fetch
和 git merge
的结合
11. 克隆项目
$ git clone http:// 或 $ git clone git://
12.查看本地分支
$ git branch -a
13.更换远程仓库连接
$ git remote set-url origin git@github.com:<Username>/<Project>.git
14.删除分支
$ git branch -d <分支名>
15.git add .可以提交未跟踪和修改文件,但是不处理删除文件,只能够提交当前目录或者它后代目录下相应文件。
四、配置GitHub
$ git config --global user.name "你随便取个用户名填在这里" //设置用户名
$ git config --global user.email "你随便写一个邮箱填在这里" //设置邮箱
$ git config --global push.default simple
$ git config --global core.quotepath false
$ git config --global core.editor "vim" //使用vim编辑提交信息
五、GitHub无法访问的问题
ssh:端口22 连接超时解决办法
参考资料:
- Git本地仓库关联、解除关联远程仓库流程及遇到的问题 - 一人行者