git基本教程

90 阅读3分钟

git:

1.本地操作

git需要全局配置一下

git config --global user.name "xxx"
​
git config --global user.email "xxx"

上传文件需要初始化仓库

git init

仓库里面的文件需要提交到暂存区

git add <文件名>

提交到暂存区相当于选中这个文件,然后提交到本地仓库

git commit -m "提交信息"

当文件夹里面的文件提交之后需要重新add 和commit,此时可以省略写,但是没有提交过的不可以这样

git commit -am "提交信息"

git status用于查看当前状态

本地文件提交后,修改文件之后必须重新add和commit

重命名或者移动文件

git mv <文件名> <新的文件名>       重命名
git mv <文件名> <文件路径>      移动文件,不是复制
2.分支

文件提交之后如果需要更改,可以新建分支

git branch <新分支名>
git checkout <新分支名>    切换到新的分支
git switch <新分支名>      切换到新的分支
git checkout -b <新分支名>   创建并且直接切换新的分支
git switch -c <新分支名>     创建并且直接切换新的分支

在新的分支上增加删除或者修改内容,结束后切换到master分支,然后合并新的分支

git merge <分支名>

如果有更新文件内容或者修改bug等多种需求,则可以在master的基础节点之上创建更多的分支

然后在各自分支上进行操作,之后合并,如果不在一条线上,并且两个文件夹修改的是一个文件,合并的时候会起冲突,则需要解决冲突

解决冲突之后还需要add commit

3.变基

合并分支会显得比较乱,如果分支太多就分不出来文件的提交结构,这时候使用变基,变基就是将分支的基点转换为其他分支的最新节点,当创建了新的节点并且提交之后,则在新的节点

git rebase master

这个相当于merge合并分支,有冲突的话,同样需要去解决冲突

然后再add,commit

现在新的分支和主分支在一条线上,直接让master分支merge

4.远程仓库的提交操作

在本地仓库进行过init add commit之后需要上传到远程仓库

git remote add origin <url>
git push -u origin master     -u代表和当前分支关联,下次直接push就可以
git push origin 本地分支:远程分支
例如:
git push origin master:dev
将本地的master分支推送到远程的dev分支,远程仓库如果没有这个分支就自动新建一个

在github在push之前需要修改分支名称,gitee不需要

git branch -M "新的分支名"
5.远程仓库的操作
git remote    列出当前关联的远程库
git remote remove <远程库名>    取消远程仓库的关联
git clone <url>   从远程仓库下载代码

当远程仓库代码版本和本地仓库版本不一致时候,在向远程仓库push之前需要更新本地仓库代码的版本保持和远程仓库代码版本一致,有两种方法

1.
git fetch   从远程仓库拉取代码,但是需要手动合并
git merge otigin/master    手动和远程仓库代码合并,如果有冲突,需要继续解决冲突
完成这两部操作就可以向远程仓库push了
2.
git pull   从服务器上拉取代码并且自动合并,快,但是没有fetch灵活
.gitignore

初始化仓库之后,git默认监控项目中的所有文件,有些文件不想提交,就在项目中添加一个.gitignore文件

,里面内容直接写上文件名,就可以忽略这个文件,不被git管理,以后的add,commit,push都和这个文件没有关系