1、账号初始化远程仓库免密等相关命令
刚安装配置git的时候用的。
1. 全局用户名:git config --global user.name "xxx"
2. 全局邮箱:git config --global user.email "xxx@xx.com"
3. 初始化git仓库:git init
4. 创建ssh key,用来git与github交互:ssh-keygen -t rsa -C "xxx@xx.com"
5. git仓库与远程GitHub仓库关联:git remote add origin git@github.com:xxx/java_practise.git
这里应该用ssh地址,而非https地址,这也是上面那个教程错的地方,错了按下面命令移除关联方式,重新关联即可。
修改参考:https://www.jianshu.com/p/5b81c9ce505c
6. 显示远程关联方式(拉取方式)ssh/https,查看clone 地址:git remote -v
// 输出内容:这是ssh方式
// origin git@github.com:xxx/java_practise.git (fetch)
// origin git@github.com:xxx/java_practise.git (push)
7. 移除关联方式:git remote rm origin
2、分支、pull request等日常协作命令
//pull,fetch,merge,rebase
git fetch // 在Sourcetree中叫“获取”
git merge 指定分支名 // 把指定源分支合并到当前分支
git pull // = git fetch + git merge,pull在Sourcetree中叫“拉取”
git pull origin 指定分支名 // 先fetch下来,把指定源分支合并到当前分支
git pull --rebase // = git fetch + git rebase
//push
git push origin 指定分支名 // “推送”到指定分支
git push (-u) origin master // 第一次用-u
checkout切换分支前,如果有更改是无法切换的,需要commit或stash。
//branch
git branch // 列出本地的所有分支,当前分支带*
git branch -r // 查看远程分支
git branch -a // 列出本地和远程的所有分支,当前分支带*
git branch 新分支名 // 新建分支
git checkout 要切换到的分支名 // 切换分支
git checkout -b 新分支名 // 新建分支并切换到该新分支
git branch -d 分支名 // 删除本地指定分支
git branch -D 分支名 // 强行删除本地某个分支。-D是git branch --delete --force的简写
git push origin --delete 远程分支名 // 删除远程分支
git push origin :远程分支 // 推送空分支到远程(删除远程分支另一种实现)
git log --graph // 查看分支合并图,全部
git log --graph --pretty=oneline --abbrev-commit // 查看分支合并图,简版
3、常用的更新命令
这是一个人在GitHub玩儿的时候用的最多的,就是不断push,最多在GitHub上改了的话先pull一下再push。
//【快速命令】
git status // 查看是否有修改
git diff // 查看修改内容
git add .(-A) //-A包括删除、更新和新增,.不包括删除
git commit -m "更新说明"
[git pull --rebase origin master] // 第一次从git下载readme文件才执行,否则本地代码被覆盖,会死人的。幸亏git提示不能直接pull,因为本地有unstaged changes.
git push (-u) origin master // 第一次用-u
git clone git@github.com:xxx/java_practise.git // 从GitHub克隆仓库到本地
以下几个命令的具体解释:
1. 提交修改/添加当前修改的文件,到暂存区:git add .
2. 提交git仓库:git commit -m "xxx"
3. 先pull下来ReadMe文件:git pull --rebase origin master
4. 再把本地库的所有内容push到远程仓库(也就是Github)上:
+ 新建的远程仓库是空的,所以要加上-u这个参数:git push -u origin master
+ 远程仓库里面有了内容之后,就不用-u了:git push origin master
5. 从GitHub克隆仓库到本地:git clone git@github.com:xxx/java_practise.git
参考:
https://www.cnblogs.com/sybil-hxl/p/13735409.html
https://www.cnblogs.com/sybil-hxl/p/15171986.html
https://www.cnblogs.com/sybil-hxl/p/15752182.html
https://blog.csdn.net/mandagod/article/details/115633164
作者:西伯尔
出处:http://www.cnblogs.com/sybil-hxl/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。