前言
1. git是分布式文件版本管理系统。分布式的东西意味着去中心或者弱化中,也就是git-server万一挂了造成的损失也不会那么可怕。
2. 安装:sudo apt-get install
本地使用:
1. git init即可创建一个空的代码仓库,建完多出一个.git目录
2. git add file.txt ; git commit -m ‘add file.txt‘ 添加一个文件,并提交给本地代码仓库
3. 不想傻掉的话,要勤用git status和git diff看看工作区(你当前的工作代码)和本地代码仓库的状态和区别
4. git log --pretty=oneline,git reflog可以查看版本号. git reset --hard HEAD^ 可以进行版本回退
5. git rm file.txt 删除文件
修改管理
1. git add file 或者 git commit -a 是工作区中往缓存区中添加文件,git commit -m ‘xx‘缓存区往本地代码仓库写
2. git checkout -- file.txt 把file.txt切换到最后一次提交之前的状态
3. git reset HEAD file.txt 将提交到缓存区的file.txt撤销
4. 当你改乱了文件,可以使用git checkout -- file.txt 撤销修改;
如果你不仅改乱了,还提交到缓冲区,则提交到缓冲区,则先git reset HEAD file.txt,在git checkout --file.txt;
如果你改乱了之后已经提交到版本库,则需要回退版本 git reset --hard 123sda
如果你改乱了还提交到远程代码库,
远程代码库
1. git clone [email protected]:test.git 克隆代码库
2. git remote add origin [email protected]:test.git 创建远程代码库
3. git push -u origin master 推送并关联代码库,以后git push即可?
分支管理
1. git checkout -b xxx
2. git merger xxx
3. git branch -d xxx
4. HEAD指向当前分支,当前分支指向提交,创建分支,就是创建一个指针指向提交,所以很快
5. git log --graph 可以以图形化的方式显示分支管理
6. --no-ff合并后不会删除分支
7. git stash ; git stash apply [email protected]{0}; git stash drop [email protected]{0};git stash pop 把修改暂时隐藏起来或者显示出来
8. 丢弃一个没有被合并过的分支,得用 git branch -D xxx
标签
就是不可以移动的分支,由于暂时用不到,不写。
一些报错
1. git pull no tracking informatio
There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull(1) for details
git pull <remote> <branch>
If you wish to set tracking information for this branch you can do so with:
git branch --set-upstream-to=origin/<branch> hgh
造成一个问题的原因可能是使用git checkout -b hgh,而不是git checkout -b hgh origin/dev。前者只是创建本地分支,后者从远程代码库中同步下来。解决办法是关联起来
git branch --set-upstream-to=origin/hgh hgh
2. git push.default simple/match
simple只同步当前分支,match同步所有同名分支,看需求进行设定
3. 远程和本地冲突,push失败,则先pull下来,解决冲突,再提交推送
版权声明:本文为博主原创文章,未经博主允许不得转载。