Git 入门

廖雪峰git教程学习笔记

//将文件添加到 stage 
git add <file>  
//commit file to repository
git commit -m “注释内容” 
//see status about stage repository
git status
//see log
git log  (退出按q键)
git log --pretty=oneline
//see history log
git reflog 
//当stage 无内容时,会回滚到head指向,当stage 有内容时,回滚滚到stage
git checkout --<file>                 
// unstage the stage file 撤销stage内容重新放回工作区
git reset HEAD <file>
//roll-back to history version [number]
git reset --hard <version number> 
//roll-back to lastet version
git reset --hard HEAD^ 
//比较stage reportary 和 work dic 版本区别
//在merge冲突时还可以查看冲突文件
git diff <file> 
//添加远程仓库 名为origin
git remote add origin [url] 
//移除仓库 origin
git remote rm origin 
//创建分支 dev
//-b 命令表示创建并切换 相当于 git branch dev  git checkout dev 两条命令
git checkout -b dev  
//切换分支                              切换回master
git checkout master 
//合并分支
git merge dev                           //将dev分支的合并到master
//删除分支
git branch -d dev 

//--graph 看分支合并图
//--pretty=oneline每行显示条
//--abbrev-commit 简写序列号
git log --graph --pretty=oneline  --abbrev-commit

//不使用 fast foward merge 需要添加comment
//fast foward 合并会丢掉分支信息
git merge --no-ff -m "comment"  dev

//git的stash功能
//暂存工作现场
git stash
//暂存列表
git stash list
//恢复工作现场+删除stash内容 
git stash apply//等效做法git stash apply stash@{0}
git stash drop
//等效做法
git stash pop

//删除分支
git branch -d <branch name>
//强行删除
git branch -D <branch name>

//查看远程
git remote

多人协作

//查看远程库信息
git remote -v
//从本地推送分支
git push <remote name><branch name>
//如果推送失败
git pull//抓取远程的新提交
//在本地创建和远程分支对应的分支
git checkout -b branch-name origin/branch-name
//建立本地分支和远程分支的关联
git branch --set-upstream branch-name origin/branch-name

抓取分支
从远程库clone时,默认情况下,你的小伙伴只能看到本地的master分支
出错了不知为啥

git checkout -b dev origin/dev

提示


git-errot.png

查看


git-error-0.png

网上说需要先git fetch


git-error.png

发现已经变化


git-error-1.png

成功
git-error-2.png

原因这些分支是你和远程进行同步(git push, git fetch, git pull)等操作之后出现的分支,它们就相当于远程分支的引用,通俗的讲,这些位于本地的引用就可以表示远程分支。
命令git checkout -b dev origin/dev的操作就是基于这些引用的,所以即使电脑目前处于离线状态(未连接网络),也是可以正常工作的。原因很简单,这个命令所操作的只是远程分支的引用,而这些引用位于本地。

cat
rm
git pull//提示要merge,可以先stash暂存,然后在pull下来,pop提示冲突。
//vim编辑器操作 i 切换到instert模式,然后输入 comment 然后 esc 输入:wq退出

对于两个人都提交一个文本来说,会冲突。运用和merge时冲突相同的解决方法,手动修改

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容