基本使用
git clone
#将远程仓库克隆到本地 git pull origin master #将远程分支拉到本地仓库
git init #初始化仓库 git status #检查冲突和修改(查看是否存在还未上传到暂存区的文件) git add . #将工作空间中所有的文件添加到暂存区 git commit -m “描述” #将暂存区的文件添加到本地仓库 git push origin localbranch:remotebranch #将本地仓库同步到远程操作
创建仓库
- git init
初始化一个仓库
git init
将当前所在目录初始化为一个新仓库git init newrepo
在当前目录下初始化一个newrepo
的仓库
- git clone
git clone 拷贝一个 Git 仓库到本地,让自己能够查看该项目,或者进行修改。git clone [url]
:[url] 是你要拷贝的项目。
提交和修改
- git add
git add [file]
将指定的文件加入到暂存区git add .
将该目录下所有的文件加入到暂存区
- git status
git status
命令用于查看在你上次提交之后是否有对文件进行再次修改。
- git diff
git diff
命令比较文件的不同,即比较文件在暂存区和工作区的差异。
- git commit
git commit -m [message]
将暂存区内容添加到本地仓库中。
- git reset
git reset
命令用于回退版本,可以指定退回某一次提交的版本。- 语法格式:
git reset [--soft | --mixed | --hard] [HEAD]
- —mixed 为默认,可以不用带该参数,用于重置暂存区的文件与上一次的提交(commit)保持一致,工作区文件内容保持不变。
$ git reset HEAD^ # 回退所有内容到上一个版本
$ git reset HEAD^ hello.php # 回退 hello.php 文件的版本到上一个版本
$ git reset 052e # 回退到指定版本
- —mixed 为默认,可以不用带该参数,用于重置暂存区的文件与上一次的提交(commit)保持一致,工作区文件内容保持不变。
- git rm
- 用于删除文件,如果这只是手动简单地从目录中手工删除文件,运行
git status
时就会在Changes not staged for commit
的提示 git rm <file>
将暂存区和工作区的文件删除- 如果删除之前修改过并且已经放到暂存区域的话,则必须要用强制删除选项 -f
git rm -f runoob.txt
- 仅从暂存区删除runoob.txt。
git rm --cached runoob.txt
- git mv
- git log
git log
- 查看历史提交记录。
- git blame
- git remote
git remote -v
显示所有远程仓库git remote show [remote]
显示某个远程仓库的信息git remote add [shortname] [url]
添加远程版本库git remote rm name
# 删除远程仓库git remote rename old_name new_name
# 修改仓库名
- git fetch
git merge
从远端仓库提取数据并尝试合并到当前分支git fetch [alias]
假设你配置好了一个远程仓库,并且你想要提取更新的数据git merge [alias]/[branch]
以上命令将服务器上的任何更新(假设有人这时候推送到服务器了)合并到你的当前分支。
- git pull
git pull <远程主机名> <远程分支名>:<本地分支名>
git pull 其实就是 git fetch 和 git merge FETCH_HEAD 的简写。
- git push
git push <远程主机名> <本地分支名>:<远程分支名>
用于从将本地的分支版本上传到远程并合并。git push origin --delete master
命令表示删除 origin 主机的 master 分支分支管理
git branch
列出所有分支git branch (branchname)
创建分支git checkout -b (branchname)
创建新分支并立即切换到该分支下git checkout (branchname)
切换分支git merge <branchname>
合并分支git branch -d (branchname)
删除分支git push origin --delete master
删除远程分支,命令表示删除 origin 主机的 master 分支标签
-
版本冲突
当push时遇到冲突了怎么办:
操作流程:
git status
git add .
git commit -m “”
git push gitee master
git pull gitee master
修改,保留想要的版本
git status
git add .
git commit
git push
直到成功为止