获取别人的仓库流程


1.Fork 项目


GitHub:基本操作_远程库


2.克隆项目到本地 (git clone)
3.在本地创建文件夹及文件 (mkdir)
4.将文件提交到GitHub (git add,commit,push)
5.发送结果到主项目库(pull request)


GitHub:基本操作_远程库_02


会显示更新后的本地库和主项目库的区别


GitHub:基本操作_新版本_03

常用指令:


git init

生成.git文件夹,将当前文件夹变成git仓库


git add .

将所有文件添加到git仓库的缓冲区


git commit -m “备注内容”

更新git版本


git push

上传代码到github中更新你的库


git pull 拉取官网库


如果你是直接在github官网上修改了库的内容,这时候本地库是没有更新的,这会导致官网上你的库和你电脑本地上的库内容不同步。所以我们需要拉取同步一下内容



git log

查看往期版本


git checkout 往期版本号

将文件切换到往期版本


git status

查看git 是否修改,是否保存


git diff

查看修改了哪些内容


git clone + 远程库地址


从你的github上把你在网页上创建的远程库克隆文件下来,然后把你要上传的文件放到里面,放到里面后记得先add 然后commit 再上传



git push -u origin master


git push origin master

上传代码


在版本回退里,你已经知道,每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支。截止到目前,只有一条时间线,在Git里,这个分支叫主分支,即master分支。HEAD严格来说不是指向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是当前分支。

切换到分支后修改完记得先add 然后commit 再切换回去



git checkout -b name

命令加上 –b参数表示创建并切换分支


相当于如下2条命令
git branch dev
创建分支

git checkout dev
切换分支



git branch –d name

删除分支


git merge name

合并分支


git reset --merge

当与分支发生冲突时,回退到与分支合并前


未commit的修改会自动转移到其他分支,可以修改后git stash 然后git checkout master 切回dev分支后,git stash pop (若报错在分支中回退一个版本git reset --hard HEAD)



git reflog查看所有历史版本 英文状态下按Q


git reset --hard HEAD~1,退回到上一个版本


git log --oneline 查看提交记录


git reset --hard d213aff 版本跳转


git reset --hard HEAD^ 只能后退,往后退一步 ^^退两步


git reset --hard HEAD~4 只能后退,波浪线后面加步数,如左边是后退四步


use “git rm --cached …” to unstage 从暂存区撤回


git diff HEAD^ apple.txt 可以用HEAD或者版本索引值

将工作区中的文件和本地库历史记录比较


创建分支: git branch [分支名] /*例: git branch hot_fix


查看分支: git branch -v


切换分支: git checkout [分支名] /*git checkout hot_fix


合并分支:git merge [有新内容分支名]


第一步:切换到接受修改的分支(被合并,增加新内容)上 git checkout [被合并分支名master] /*切换分支

第二步:执行 merge 命令 (合并分支指令) git merge [有新内容分支名]

主线和分支冲突的时候,首先要统一好, 再add ,commit 解决冲突



git fetch [远程库地址别名origin] [远程分支名master] 抓取下来


git checkout origin/master

/*切换到链接地址(别名)的master(可查看抓取下来内容


git checkout master

切换回


git remote -v

查看远程库别名


git push

远程库别名 分支名 -u


git merge “合并注释” HEAD branch1 # 把branch1这个分支的最新版本合并到当前分支的最新版本
HEAD表示最新版本的意思

出现错误的时候要先pull下来,解决冲突再push上去