本地提交至远程
git init #初始化
git add README.md #添加一个文件
git commit -m "first commit" #为提交写备注
git remote add origin git@github.com:yougitname/xxx.git #添加远程仓库(可用https://)
git push -u origin master #推送至远程仓库
本地拉取远程
git remote -v # 查看远程仓库
git fetch origin master # 从远程获取最新版本到本地
git diff FETCH_HEAD # 查看远程fetch下来的和本地的区别
git merge origin/master # 把远程下载下来的代码合并到本地仓库
git clone git@github.com:yougitname/xxx.git # 从远程仓库clone (可用https://)
分支操作
# 新建 dev 分支
git branch dev
# 切换至 dev
git checkout dev
# 合并dev分支 要先切换至其他分支
git merge dev
# 删除分支
git branch -d dev
// 与旗标 -d 不同,如果指定旗标 -D,即使没合并分支中的改动,也会删除分支。
# 放弃主题分支中的改动
git branch -D dev
回滚到某一个版本
# hard后为 版本号 可使用git log查看相关信息
git log
git reset --hard 1d0031df5b06955ab4482ef9459ff390829c380c
放弃本地修改,强制拉取远程代码覆盖本地
# 拉取远程代码
git fetch --all
# 把hard指向刚刚下载的最新的版本
git reset --hard origin/master
放弃远程修改,强制推送至远程
git push origin master -f
—————————————————————————————————————————————————————
出现 RPC failed 以及 POST git-receive-pack (chunked) 的问题
# PRC failed
error: RPC failed; result=18, HTTP code = 200B | 1 KiB/s
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: recursion detected in die handler
postBuffer 过小
#当使用 HTTPS 提交到 Git 上时,是不检查加密的,要是文件过多将导致提交停止
#解决办法:在.git所在文件夹 敲下这段命令
git config http.postBuffer 524288000
##文件多,传输慢,耐心点,给坑过##
参考:http://stackoverflow.com/questions/17683295/git-bash-error-rpc-failed-result-18-htp-code-200b-1kib-s
—————————————————————————————————————————————————————
关于 git gui 视图工具 的操作 ——> 本地推送至远程的
—————————————————————————————————————————————————————
关于上传时忽略某文件的操作
touch .gitignore #生成该文件,
#也可 vim .gitignore 生成
# 按下列规则写入 .gitignore。
*.a # 忽略所有 .a 结尾的文件
!lib.a # 但 lib.a 除外
/TODO # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
build/ # 忽略 build/ 目录下的所有文件
doc/*.txt # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
关于.gitignore 不起作用
(.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的;必须先把本地缓存删除(改变成未track状态),再提交)
git rm -r --cached xxx/
git add xxx/
git commit -m 'update .gitignore'
—————————————————————————————————————————————————————
—————————————————————————————————————————————————————
关于 GitHub Error Message - Permission denied (publickey) 的问题
第一种:生产ssh生产密钥,并加入你的git仓库中
解决方法
其中把密钥加入git仓库中
第二种:改用 https 模式
解决方法
—————————————————————————————————————————————————————
关于 CentOS 上 在 push 时 使用https 方式时,报错
#显示错误如下
error: The requested URL returned error: 403 Forbidden while accessing https://github.com/Git/test.git/info/refs
fatal: HTTP request failed
解决办法:
#修改.git下的配置文件
vim config
#修改url
-------------------------------------------------------
[remote "origin"]
//url = https://github.com/yourname/yourgit.git
url = https://yourname@github.com/yourname/yourgit.git
-------------------------------------------------------
#然后再 push
手把手教你:git操作