您现在的位置是:首页 >学无止境 >git学习网站首页学无止境
git学习
Git常用命令
Git工作区中文件的状态
Git工作区中的文件存在两种状态:
- untracked未跟踪(未被纳入版本控制)
- tracked已跟踪(被纳入版本控制)
- Unmodified未修改状态
- Modified已修改状态
- Staged 已暂存状态
- 注意:这些文件的状态会随着我们执行Git的命令发生变化
本地仓库操作
本地仓库常用命令如下:
- git status 查看文件状态
git status命令用于查看文件状态
- git add 将文件的修改加入暂存区
git add命令的作用是将文件的修改加入暂存区
- git reset 将暂存区的文件取消暂存或者是切换到指定版本
- git commit 将暂存区的文件修改提交到版本库
git commit -m "messige" [filename]
- git log 查看日志
远程仓库操作
- git remote 查看远程仓库
如果想查看已经配置的远程仓库服务器,可以运行git remote
命令,它会列出每一个远程服务器的简写。如果已经克隆了远程仓库,那么至少应该能看到origin,这是Git克隆的仓库服务器的默认名字。
- git remote add 添加远程仓库
添加远程仓库,运行git remote add <shortname> <url>
添加一个新的远程Git 仓库,同时指定一个可以引用的简写。
- git clone 从远程仓库克隆
如果你想获得一份已经存在了的Git远程仓库的拷贝,这时就要用到git clone命令。Git克隆的是该Git仓库服务器的几乎所有数据(包括日志信息、历史记录等),而不仅仅是复制工作所需要的文件。
克隆仓库的命令格式是:
git clone [url]
- git pull 从远程仓库拉取
git pull 命令的作用是从远程仓库获取最新版本并合并到本地仓库,命令格式
git pull [short-name] [branch-name]
注意:如果当前本地仓库不是从远程仓库克隆,而是本地创建的仓库,并且仓库中存在文件,此时再从远程仓库拉取文件的时候会报错( fatal: refusing to merge unrelated histories )
解决此问题可以在git pull命令后加入参数–allow-unrelated-histories
- git push 推送到远程仓库
将本地仓库内容推送到远程仓库,可以使用命令:
git push [remote-name] [branch-name]
分支操作
分支是Git使用过程中非常重要的概念。使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线。同一个仓库可以有多个分支,各个分支相互独立,互不干扰。
通过git init命令创建本地仓库时默认会创建一个master分支。
- git branch 查看分支
- git branch 列出所有本地分支
- git branch -r 列出所有远程分支
- git branch -a 列出所有本地分支和远程分支
- git branch [name] 创建分支
- git checkout [name] 切换分支
- git push [shortName] [name] 推送至远程仓库分支
- git merge [name] 合并分支
- 不同分支对同一文件进行修改后再合并,会产生冲突,合并后手动处理完冲突,再add就行了
- commit的时候报错不能只提交一部分,可使用-i命令忽略
标签操作
Git中的标签,指的是某个分支某个特定时间点的状态。通过标签,可以很方便的切换到标记时的状态。比较有代表性的是人们会使用这个功能来标记发布结点(v1.0、v1.2等)。
-
git tag 列出已有的标签
-
git tag [name] 创建标签
-
git push [shortName] [name] 将标签推送至远程仓库
-
git checkout -b [branch] [name]检出标签
检出标签时需要新建一个分支来指向某个标签,检出标签的命令格式:
git checkout -b [branch][name]