git基础命令
2017-08-16 13:01
295 查看
最经几天觉得用eclipse的git很不方便,所以改用命令行直接用git提交代码,这些是git的一些基础指令:
遇到的问题:
首先是time out 现在办公的地方的网很差,所以没办法解决:
其次是:
git remote add origin https://时报错,需要把origin删除掉
error: failed to push some refs to
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: ‘git pull …’) before pushing again.
hint: See the ‘Note about fast-forwards’ in ‘git push –help’ for details.
这个错误是远程库和本地内容有冲突,需要先吧远程的内容用另外一个分支存到本地,然后合并两个分支
1、把远程仓库master分支下载到本地并存为tmp分支
git fetch origin master:tmp
2、查看tmp分支与本地分支的不同
git diff tmp
3、将tmp分支和本地的master分支合并加(加上的–allow-unrelated-histories理由是可能会报fatal: refusing to merge unrelated histories的错)
git merge tmp –allow-unrelated-histories
这个时候呢,本地与远程就没有冲突了
4、最后删除tmp分支
git branch -d tmp
还有个问题是使用 ssh连接时经常超时,但是我使用putty连接远程服务器时没有什么问题,所以基本上都是用的https连接的。
refusing to merge unrelated histories
因为两个仓库不同,无法pull合并,需要在后面加上一句:
–allow-unrelated-histories
$ git merge tmp –allow-unrelated-histories
1、基础指令
指令 | 含义 |
---|---|
git init | 初始化,创建git文件 |
git add a.txt b.txt c.txt | 添加多个文件,用空格隔开 |
git add . | 添加所有文件 |
git commit -m “提示信息” | 提交 |
git status -s | 查看仓库当前的简要信息 |
git status | 查看仓库当前的状态的详细信息 |
git diff a.txt | 查看文件 a.txt修改的内容 |
git log | 查看日志 |
git log –graph | 查看分支图 |
git reflog | 查看每一次命令 |
git checkout – a.txt | 让这个文件回到最近一次git commit或git add时的状态。 |
git reset HEAD | 撤销暂存区的修改 |
2、版本控制
指令 | 含义 |
---|---|
git reset –hard head^ | 回退到上个版本有几个^就退几个版本 |
git reset –hard HEAD~100 | 回退到前100个版本 |
git reset –hard 06778 | 最后一位是id,回退到对应id(不用 写全) |
3、连接远程库相关
指令 | 含义 |
---|---|
git remote add origin https:// | 连接远程库 |
git remote rm origin | 删除连接 |
git push orign master | 提交代码 |
4、分支相关
指令 | 含义 |
---|---|
git checkout -b dev | 创建并切换到dev分支 |
git branch dev | 创建分支 |
git checkout dev | 切换分支 |
git branch | 查看当前分支 |
git merge tmp | 合并分支 |
git branch -d tmp | 删除tmp分支 |
git fetch orign master:tmp | 以tmp分支下载引用 |
首先是time out 现在办公的地方的网很差,所以没办法解决:
其次是:
git remote add origin https://时报错,需要把origin删除掉
error: failed to push some refs to
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: ‘git pull …’) before pushing again.
hint: See the ‘Note about fast-forwards’ in ‘git push –help’ for details.
这个错误是远程库和本地内容有冲突,需要先吧远程的内容用另外一个分支存到本地,然后合并两个分支
1、把远程仓库master分支下载到本地并存为tmp分支
git fetch origin master:tmp
2、查看tmp分支与本地分支的不同
git diff tmp
3、将tmp分支和本地的master分支合并加(加上的–allow-unrelated-histories理由是可能会报fatal: refusing to merge unrelated histories的错)
git merge tmp –allow-unrelated-histories
这个时候呢,本地与远程就没有冲突了
4、最后删除tmp分支
git branch -d tmp
还有个问题是使用 ssh连接时经常超时,但是我使用putty连接远程服务器时没有什么问题,所以基本上都是用的https连接的。
refusing to merge unrelated histories
因为两个仓库不同,无法pull合并,需要在后面加上一句:
–allow-unrelated-histories
$ git merge tmp –allow-unrelated-histories