从0开始学Git——Git的常见操作

178 阅读3分钟

Git常用命令

创建Git版本库

git init [目录]#创建目录版本库, 不写的话是当前目录 

该命令会在目录中创建一个名为.git的隐藏目录

文件提交

  1. 添加文件:
git add 文件名 #添加到下次commit提交的文件

已经管理过的文件可以使用 git add -u提交代码,这样就不用再写文件名了

`shell

git status #使用 git status检查状态:

`

On branch master

No commits yet

Changes to be committed

  1. 提交的代码
   git commit -m '注释' # 提交目录下的所有add的代码

使用 git log 可以查看提交的记录

查看状态

git status 

git diff 文件名 # 查看被修改改的行,

变更文件名

有这样一个需求我们需要把test.txt改成test.md提交:

执行git commit

报一下错误:

On branch master

Changes not staged for commit:

deleted: test.txt

Untracked files:

test.md

no changes added to commit

意思是先要把test.txt删除,然后再提交test.md

方式一:

  1. 提交更改后的文件
   git add test.md

  1. 删除老文件
   git rm test.test

方式二 :

git mv test.txt test.md # 这种方法给简单

查看git状态:

git status

On branch master

Changes to be committed:

(use "git reset HEAD ..." to unstage)

​ renamed: test.txt -> test.md

意思为test.txt重命名为test.md

查看历史记录

使用命令查看:

git log [--oneline] # 简洁的看历史记录

--onelline : 简洁的查看历史记录

-n数字: 查看最近的历史记录

--all : 查看所有版本分支的版本历史

--graph: 查看整个仓库

查看详细信息:

git show commit号 # commit号可以是一部分

从本地仓库中撤销代码

  • 撤销已提交的代码
git reset --soft HEAD #撤销已经commit的代码

--soft 比较柔和的撤销

HEAD 撤销最近一次提交, 也可以这样写:HEAD~1

  • 将文件移出暂存区
  git reset HEAD 文件名

这个撤销请谨慎使用, 因为你可能把别人的代码删掉

  • 取消add的代码

git checkout -- .test.md

使用图形化界面查看

gitk # 在工作目录执行

删除文件

先删除本地文件

再使用命令:

git rm 文件名
git commit -m '删除多余文件'

忽略配置文件

在仓库根目录创建 .gitignore文件

在里面配置: *.txt

分支

git  branch  分支名称 #为当前提交创建分支
git  branch  分支名称  commit hash#为指定前提交创建分支
git  branch   #查看分支
git branch -d 分支名称# 删除分支
git checkout 分支名称 #切换分支
git checkout -b 分支名称 #创建并切换分支


git checkout master #切换到主干
git merge 目标分支 #将目标分支合并到当前所在分支

注意切换分支前要先commit修改

将代码推到远程仓库

git push -u origin master# 将本地master分支传递到远程master上

origin 指GitHub

从远端获取代码

git clone  git@github.com:liuyanqing1023/xcEduService.git

协同工作需常用的命令

  • commit, 提交代码
  • pull,更新代码
  • push,往远程推送代码

git目录

git仓库里有个.git文件夹

HEAD 存放当前仓库正在工作的分支

refs

​ heads : 分支

​ tags : 标签给commit打标签

objects : 放的是对象

切换分支命令: git checkout master

Git对象直接的关系

有三种对象: commit, tree blob

一次提交就是一个commit

提交的树形文件夹叫做tree

文件叫做blob, 只要文件名想通就是一个blob

  1. 设置仓库级别的配置:
   #设置仓库级别的配置,当然这个配置不是必须的
   git config --local user.name  'admin01' #设置用户名
   git config --local user.email  '395994482@qq.com'#设置email
   #在仓库中使用: git config --local --list 检查是否创建成功
   

配置的原则是,范围小的有限范围大的

历史库和暂存区

执行 git add files 把代码放到待提交列表(暂存区)

执行 git commit 把代码放到本地仓库(工作区)

执行git push把代码放到远程仓库

码字不易如果对你有帮助请给个关注

爱技术爱生活 QQ群: 894109590