git常用语句

1、常用命令
git checkout -b liukai origin/liukai 新建本地分支liukai与远端分支liukai关联

git checkout -b liukai 新建本地分支liukai 并切换到liukai
git branch -d liukai 删除分支 -D强制删除(当创建的分支没有merge过而要删除的时候用——D)
git checkout -liukai 切换到liukai分支
git branch -v 查看版本号码信息以及提交信息
git branch -vv 查看本地和远程的追踪关系
git branch --merged 查看哪些分支已被并入当前分支(译注:也就是说哪些分支是当前分支的直接上游。):
git branch -r 查看远程分支
git branch -a 查看所有分支

合并分支到主分支
git checkout lk 切换到lk
git merge master 合并到主分支

查看分支:git branch

创建分支:git branch <name>

切换分支:git checkout <name>

创建+切换分支:git checkout -b <name>

合并某分支到当前分支:git merge <name>

删除分支:git branch -d <name>
1、初始化一个Git仓库,使用git init命令
在一个文件夹下打开git执行 git init命令,就可以从远端拉代码,开启版本的操作

2、git diff 显示本次修改的差别,和git status操作时间相同

3、git log 查看每次提交的信息(commit) , q退出
git log--pretty=oneline 简练查看历史提交信息


4、git checkout -b liukai origin/liukai


5、利用 git push --set-upstream origin branch_name来在远程创建一个与本地branch_name分支同名的分支并跟踪;
利用 在本地创建和远程分支对应的分支,
先git pull
再使用git checkout -b branch-name origin/branch-name 来在本地创建一个与 branch_name 同名分支跟踪远程分支。

6、版本回溯:
git log 查看当前分支的提交历史
Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,
上一个版本就是HEAD^,
上上一个版本就是HEAD^^,
当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。
git reset --hard HEAD

Git提供了一个命令git reflog用来记录你的每一次命令
然后git reset --hard版本号(根据——m""的记录来查找所需的版本号)

7、查看修改信息

git diff HEAD -- readme.txt
查看readme.txt修改结束commit以后得改变

8、提交撤回

git checkout -- file:没有add的修改 撤回对file的修改,命令中的--很重要,没有--,就变成了“切换到另一个分支”的命令

git reset HEAD readme.txt :已经add进入缓存区,撤销add的效果, 然后丢掉工作区的修改 git checkout --file:没有add的修改

若已经commit 进入版本库 进行版本回退即可。

9、删除文件
rm 或者git rm 以后如果确实要删除,add commit 删除即可
若是误删执行以下命令恢复即可
git checkout -- test.txt

10、远程库
本地文件夹为learngit
github创建一个同名文件,然后在本地执行下面命令关联远程仓库
git remote add origin git@github.com:michaelliao/learngit.git
git push -u origin master第一次推送master分支的所有内容;
每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改;
此时会默认本地和远程master的对应track关系

11、从远程库克隆
git clone ssh链接 复制代码到本地

12、解决冲突
开始的时候master和liukai分支相同,然后
master 修改了readme.txt 已经commit到版本库
liukai 分支也修改了readme.txt 已经commit到版本库
两个分支修改的内容不一致
在master上merge liukai的时候会在read.txt 上面有冲突,手动调整至自己想要的状态,然后add commit即可

git log --graph命令可以看到分支合并图。

13、git merge --no-ff -m""
这样合并以后可以看到merge造成变的日志(在git log中)

14 、git stash 把当前分支未开发完成的代码暂时封存,
其他分支操作完成,merge到master分支以后,
切换到git stash 分支上面,git stash pop 删除stash并恢复以前未开发完成的代码的进度。

15、未经合并的分支在删除的时候用 git branch -D强制删除(当创建的分支没有merge过而要删除的时候用——D)

16、git remote 查看远程库
git remote -v 查看远程库更加详细的信

多人协作的模式

因此,多人协作的工作模式通常是这样:

首先,可以试图用git push origin <branch-name>推送自己的修改;

如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;

如果合并有冲突,则解决冲突,并在本地提交;

没有冲突或者解决掉冲突后,再用git push origin <branch-name>推送就能成功!

如果git pull提示no tracking information,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream-to <branch-name> origin/<branch-name>。

17、ignore不起作用的问题是因为远程库内已经有了这些文件,已经被追踪,把他们删除就行,ignore就起作用了,以后这些文件更新就不会提交到远程库

18、对应远程库有更新时,本地推送会失败,先拉远程库到本地,解决冲突再push
1)远程库更新的文件与本地不是一个,直接git pull 然后将本地推送即可
2)远程库更新的文件与本地更新的文件有的在同一个文件上,pull的时候手动解决冲突,然后commit提交至本地代码库,完成pull ,然后再push

19、基于最新分支进行开发
先从master拉取最新代码,
然后在liukai分支merge即可
可能出现的问题:
1)若liukai分支与master分支同时修改一个文件 就要手动修改然后commit完成

git常用语句

上一篇:Header响应头 详解


下一篇:bochs入门使用