git简单使用笔记

连接远程仓库:
git remote add origin https://github.com/OliveKong/poster.git
(其实是将https://github.com/OliveKong/poster.git 重新名命,缩写为origin)
如果要换到另一个远程仓库,先删除当前远程仓库,再添加新仓库:
git remote rm origin
git remote add origin https://github.com/OliveKong/poster2.git
查看远程库信息:git remote -v

要输入信息时:
http://blog.csdn.net/cjh_android/article/details/51923618
除ubuntu,按“i”进入输入模式,输完内容后,按Esc,输入“:wq”即可。
ubuntu下,输入merge信息后直接ctrl+x,然后终端会问你是否保存最新缓冲区,选择保存,然后还会有一个次问你把最新的merge信息保存到那个文件,我没有创建新的文件,直接Enter,就OK,然后你就会看到一堆正常 merge 的信息。

当远程仓库有改动时,会提交不上去,错误信息类似:
error: 无法推送一些引用到 ‘git@github.com:astbl123/myVimrc.git’
提示:更新被拒绝,因为远程仓库包含您本地尚不存在的提交。这通常是因为另外
提示:一个仓库已向该引用进行了推送。再次推送前,您可能需要先整合远程变更
提示:(如 ‘git pull …’)。
提示:详见 ‘git push –help’ 中的 ‘Note about fast-forwards’ 小节。
原因就是github上面可能和本地的代码不同步,需要把远程服务器的代码更新到本地才行。输入:
git pull
将github代码更新到本地。
可以试两种方法:

1) 获取远端更新并与本地合并,再git push

git remote add origin https://github.com/username/Hello-World.git
git fetch origin//获取远程更新git merge origin/master //把更新的内容合并到本地分支,这句话就是git pull
2) 通过+master强行更新

git push -u origin +master

git checkout – text.txt#恢复文件到上一次提交,git commit或git add时的状态。
也可以使用git reset HEAD text.txt
git rm test.txt #删除文件,虽然可以通过git checkout恢复,但是会丢失提交后的修改(未提交)

git reset –hard HEAD^#版本退回,HEAD是指针,HEAD^表示上一个版本。HEAD^也可以是commit版本号。

要关联一个远程库,使用命令git remote add origin git@server-name:path/repo-name.git;

关联后,使用命令git push -u origin master第一次推送master分支的所有内容;

此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改;

git checkout -b dev相当于git branch dev 加上 git checkout dev,创建分支并切换。

$ git merge –no-ff -m “merge with no-ff” dev
合并分支时,加上–no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并。

git branch -d 分支名字,删除分支。

bug分支
当不想提交,但是必须修复bug时:
在当前分支储藏现场git stash
然后切换到主分支git checkout master
建立修复bug分支git checkout -b 分支名
转换到master git checkout master
提交 git add git commit
合并到master git merge –no-ff -m “” bug分支名
删除分支 git brance -d bug分支名
回到先前分支恢复现场git checkout 分支名
查看一下git stash list
恢复方法一:git stash apply 恢复后删除git stash drop
恢复方法二,在恢复的同时删除:git stash pop
如果多次stash,怎么恢复?git stash apply stash@{0}

强行删除:git branch -D 分支名
推送分支:git push origin 分支名
查看分支:git branch

标签,方便找到指定历史版本:
创建标签:切换到需要打标签的分支上git checkout 名
打标签:git tag
如果想要在之前的版本打标签,先看历史commit id:git log –pretty=oneline –abbrev-commit
然后,git tag 版本名 commit id
使用 git tag查看标签
具体查看某个标签git show 标签名
还可以创建带有说明的标签,用-a指定标签名,-m指定说明文字:
git tag -a v0.1 -m “version 0.1 released” commit id
还可以通过-s用私钥签名一个标签
删除打错标签:git tag -d 标签名
将某个标签推送到远程:git push origin 版本名
一次性推送全部尚未推送到远程的本地标签:git push origin –tags
如果要删除已经推送到远程的标签:先删除本地标签git tag -d 标签名
在删除远程标签,通过push删除:git push origin :refs/tags/标签名

与多个远程关联:
git remote add github git@github.com:michaelliao/learngit.git
git remote add gitee git@gitee.com:liaoxuefeng/learngit.git

git push github master
git push gitee master

使用码云,国内的Git托管服务,https://gitee.com/

配置git
git config –global user.name sunyao123
git config –global user.email 2444@qq.com
git config –global color.ui true#配置颜色

需要忽略某现文件,把某些文件放到Git工作目录中,但又不能提交它们:
生成一个 .gitignore文件,将需要忽略的文件名放进去,可以使用正则。然后将 .gitignore 文件commit上传到远端。这时后git status就不会出现Untracked files …提示。
这时add文件不能添加,可以使用-f强制添加到git:git add -f 文件名
检查.gitignore是否有问题,git check-ignore -v App.class
也可以对.gitignore做版本管理!

配置别名:
将commit配置为ci:git config –global alias.ci commit
配置Git的时候,加上–global是针对当前用户起作用的,如果不加,那只针对当前的仓库起作用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值