git初始化
-
git config --global user.name ‘用户名’
-
git config --global user.email ‘邮箱’
建库及本地仓库操作
新建一个作为本地仓库的文件夹,在其中进行操作。
-
git init #初始化为仓库
-
对新增/修改过的文件:
git add 文件名 #添加到暂存区 git commit -m '提交描述' #提交到仓库
-
删除文件:
rm -rf 文件名 git rm 文件名 git commit -m '对删除的描述'
推送到远程仓库
-
git push
从远程仓库拉取
方法1:获取最新代码到本地,并自动合并到当前分支
//查询当前远程的版本
git remote -v
//直接拉取并合并最新代码
git pull origin master [示例1:拉取远端origin/master分支并合并到当前分支]
git pull origin dev [示例2:拉取远端origin/dev分支并合并到当前分支]
方法2:不额外建立本地分支
//查询当前远程的版本
$ git remote -v
//获取最新代码到本地(本地当前分支为[branch],获取的远端的分支为[origin/branch])
$ git fetch origin master [示例1:获取远端的origin/master分支]
$ git fetch origin dev [示例2:获取远端的origin/dev分支]
//查看版本差异
$ git log -p master..origin/master [示例1:查看本地master与远端origin/master的版本差异]
$ git log -p dev..origin/dev [示例2:查看本地dev与远端origin/dev的版本差异]
//合并最新代码到本地分支
$ git merge origin/master [示例1:合并远端分支origin/master到当前分支]
$ git merge origin/dev [示例2:合并远端分支origin/dev到当前分支]
提示 Please enter a commit message to explain why this merge is necessary.
git 在pull或者合并分支的时候有时会遇到这个界面。可以不管(直接下面3,4步),如果要输入解释的话就需要:
1.按键盘字母 i 进入insert模式
2.修改最上面那行黄色合并信息,可以不修改
3.按键盘左上角"Esc"
4.输入":wq",注意是冒号+wq,按回车键即可
提示 error: Your local changes to the following files would be overwritten by 巴拉巴拉
如果想保留刚才本地修改的代码,并把git服务器上的代码pull到本地(本地刚才修改的代码将会被暂时封存起来) ,可以下述命令:
git stash //备份当前的工作区的内容,从最近的一次提交中读取相关内容,让工作区保证和上次提交的内容一致。同时,将当前的工作区内容保存到Git栈中。
git pull
git stash pop //从Git栈中读取最近一次保存的内容,恢复工作区的相关内容。由于可能存在多个Stash的内容,所以用栈来管理,pop会从最近的一个stash中读取内容并恢复。
还可以使用:
git stash list: 显示Git栈内的所有备份,可以利用这个列表来决定从那个地方恢复。
git stash clear: 清空Git栈。此时使用gitg等图形化工具会发现,原来stash的哪些节点都消失了。
将别人的仓库变成自己的
1.先在GitHub中建立一个远程仓库
2.在本地clone自己的远程仓库
3.clone别人的仓库,将除了.git文件夹以外的内容复制到自己的本地仓库
4. git add,git commit,git push
或者先clone别人的仓库,然后删掉.git文件夹,重新git init,再建远程仓库,参考这个