目录
1 坑-更新
*(17/10/26)本地直接删除文件后,git到远程仓库,为什么不会同步删除对应文件
*(18/02/27)如何解决冲突合并的问题
* ( 18/03/02 )changes not stage for commit(存在submodule的情况)
* (18/04/27) 正确使用branch
2 学习笔记
*(17/10/26)常用命令
*(18/02/11)关于远程分支
正文
1. 坑-更新
- (17/10/26)本地直接删除文件后,git到远程仓库,为什么不会同步删除对应文件
https://segmentfault.com/q/1010000003049019
git add .
只会在stage添加文件和修改文件,不会删除文件
git add -A
会stage所有操作包括删除文件
- (18/02/26)如何解决冲突合并
在协作开发的过程中我们经常会遇到远程的仓库的版本比本地版本高情况
这个时候我们通常需要先git pull [remote][branch]
获取最新的版本信息之后,在上传自己本地新的开发情况。
这个时候我们就会碰到远程仓库与本地仓库产生冲突的情况
在你还没解决冲突的情况下进行其他操作
git命令行会提示你发生冲突的文件,比如
unresolved conflict
U xxx.txt
xxx.txt之中有冲突还未解决
ok,那我们来解决下xxx.txt的冲突吧
打开xxx.txt文件
会看到
>>>HEAD
function x(a,b){
return a+b
}
============
async function x(a,b)=>{
return a+b
}
<<<fudfhjbvjcbducud
这是什么意思呢
就是以=======为分界线
上面的部分是你pull之前文件的内容
下面的部分是你pull的远程仓库文件的内容
二者发生了冲突,你需要在上下两个部分中选择一个部分删除另外一个部分或者相办法折衷以下也是可以的
比如我这样改
async function x(a,b)=>{
return a+b
}
我删除上面部分的内容了
这样我们就解决了一个冲突,然后我们就可以进行
git add .
git commit -m"conflict resolved"
这样git就会知道你解决了本地的冲突
*(18/02/11)关于远程分支
我尝试了git add basic-form
后没有任何变化
之后查看网上的解决方案发现这是存在submodule的情况
所以我
cd basic-form
git add .
git commit -m"fix"
cd ..
git add basic-form
之后进行
git commit -m"fix basic-form"
就可以
git push
- (18/04/27) 正确使用branch
- (1)
今天在使用git branch
时候
git checkout -b dev
touch 1.txt
echo hello >> 1.txt
然后
git checkout master
//error: pathspec 'master' did not match any file(s) known to git.
后来发现原来如果master分支下没有commit记录,git并不会将这个作为分支
*(2)
解决了上面的问题还有一个问题
我在dev分支下建立的文本1.txt在master分支下也能看到
git add .
git commit -m"add 1.txt"
git checkout master
之后在master分支下就看不到1.txt了
所以看来没有commit的修改都会被分支共享
2. 学习笔记 - 更新
(17/10/26)提交修改
git add
stage 暂存区
git commit
版本区
git push
远程仓库
git status
查看当前状态
git log
查看信息分支合并
git branch
列出所有分支
git branch [new branch]
创建新的分支
git checkout [branch]
切换分支
git branch -d [branch]
删除分支
git merge [branch]
合并分支linux常用command line
pwd
当前目录
dir
当前目录下文件
mkdir
创建目录
cat
查看文件
vi
编辑文件
touch
创建文件
rm
删除文件
rm -rf
强制删除文件
*(18/02/11)关于远程分支
如何查看远程分支
git branch -r
如何推送本地分支到远程分支
git push <upstream> HEAD:<branch_name>
如何删除远程分支
git push <upstream> --delete <branch_name>