git用法

1.git的配置命令

配置命令: git config

  • 配置所有用户: git config --system[选项]

配置文件位置:/etc/gitconfig

  • 配置当前用户: git config --global[选项]

配置文件位置:~l.gitconfig

  • 配置当前项目: git config [选项]

配置文件位置: project.git/config

3.将工作内容记录到暂存区

git add [files..]

e.g.将a , b 记录到暂存区 git add a b
e.g.将所有文件(不包含隐藏文件)记录到暂存区 git add * # 注意: git add * 能提交除去.开头的文件

4.取消文件暂存记录

git rm --cached [file]

5.将文件同步到本地仓库

git commit [file] -m [message] 说明: -m表示添加一些同步信息,表达同步内容

e.g.将暂存区所有记录同步到仓库区 git commit -m 'add files'

6.查看commit日志记录

git log
git log --pretty=oneline

7.比较工作区文件和仓库文件差异

git diff [file]

8.放弃工作区文件修改

git checkout -- [file] 也可以 git checkout []file]
git mv a b # 将a重命名为b

9.版本回退

1,退回到上一个commit节点

git reset --hard HEAD^
git reset --hard HEAD^^
git reset --hard HEAD^^^
注意: 一个^表示回退一个版本,以此类推,当版本回退之后,工作区会自动和当前commit版本保持一致

2,退回到指定的commit_id节点

git reset --hard [commit_id]

3,查看所有的操作记录

git reflog

工作状态,一般用于版本的迭代。

git tag [tag name][commit_id] -m[message] 说明: commit_id可以不写则默认标签表示最新的
commit_id位置,message也可以不写,但是最好添加。

e.g.在最新的commit处添加标签v1.0 git tag v1.0 -m '版本1'
查看标签 git tag


5.查看标签 git tag

git tag 查看标签列表
git show [tag_name]查看标签详细信息

6.去往某个标签节点

git reset --hard [tag]

7.删除标签

git tag -d [tag]

保存工作区

1.保存工作区内容

git stash save [message] 说明:将工作区未提交的修改封存,让工作区回到修改前的状态 最新保存的工作区在最上面

2.查看工作区列表

git stash list

3.应用工作区 git stash apply stash@{1}

git stash apply [stash@{n}]

4.删除工作区

git stash drop [stash@{n}] 删除某一个工作区
git stash clear 删除所有保存的工作区

分支管理

git branch
git branch -r
git branch -a
git branch [分支名] 创建分支
git checkout [分支名] 切换到分支
git checkout -b [分支名] 创建并进入该分支

  1. 删除分支

git branch -d [branch] 删除分支
git branch -D [branch] 删除没有被合并的分支

远程仓库

2.共享仓库

在git仓库中bare属性为True的共享仓库可以很好的和远程仓库进行交互

创建步骤∶

  • 选择共享仓库目录,将该目录属主设置为当前用户

mkdir gitrepo
chown tarena:tarena gitrepo # 将文件 gitrepo 的拥有者设为 tarena,群体的使用者 tarena :
Linux chown(英文全拼:change owner)命令用于设置文件所有者和文件关联组的命令。 chown 需要超级用户 root 的权限才能执行此命令。只有超级用户和属于组的文件所有者才能变更文件关联组。非超级用户如需要设置关联组可能需要使用 chgrp 命令。

chown [-cfhvR] [--help] [--version] user[:group] file...
参数 :

  • user : 新的文件拥有者的使用者 ID
  • group : 新的文件拥有者的使用者组(group)
  • -c : 显示更改的部分的信息
  • -f : 忽略错误信息
  • -h :修复符号链接
  • -v : 显示详细的处理信息
  • -R : 处理指定目录以及其子目录下的所有文件
  • --help : 显示辅助说明
  • --version : 显示版本

把 /var/run/httpd.pid 的所有者设置 root:
chown root /var/run/httpd.pid

将文件 file1.txt 的拥有者设为 runoob,群体的使用者 runoobgroup :
chown runoob:runoobgroup file1.txt

将当前前目录下的所有文件与子目录的拥有者皆设为 runoob,群体的使用者 runoobgroup:
chown -R runoob:runoobgroup *

把 /home/runoob 的关联组设置为 512 (关联组ID),不改变所有者:
chown :512 /home/runoob


查看进程
ps -e |grep ssh


2.删除远程主机

git remote rm[origin]

3.查看连接的主机

git remote 注意:一个git项目连接的远程主机名不会重复

4.将本地分支推送给远程仓库

git push origin [tag] 推送本地标签到远程
git push -u origin master 推送本地分支到远程,并保存连接,下次直接git push 就可以了
git push origin --tags 推送本地所有标签到远程
git push origin --delete tag [tagname]删除远程仓库标签
git branch -a 查看所有分支
git branch -r 查看远程分支

1.从远程获取项目

git clone tarena@127.0.0.1:/home/tarena/gitrepo/tedu.git 注意:获取到本地的项目会自动和远程仓库建立连接

4.将本地分支推送给远程仓库

git push -u origin master 将master分支推送给origin主机远程仓库,第一次推送分支使用-u表示与远程对应

5.删除远程分支

git branch -a 查看所有分支
git push origin[:branch] 删除远程分支

6.其他推送方法

git push --force origin 用于本地版本比远程版本|旧时强行推送本地版本
git push origin [tag]推送本地标签到远程
git push origin --tags 推送本地所有标签到远程
git push origin --delete tag [tagname]删除远程仓库标签

git的使用

基础命令:

git init
git status
git add
git commit
git log
git diff

版本控制

git reset --hard HEAD^ | commit_id | tag
git reflog

工作区保存

git stash
git reflog

分支处理

git remote add |rm
git clone

上传

git push -u origin branch

获取

git pull | git fetch

写入自己的博客中才能记得长久
原文地址:https://www.cnblogs.com/heris/p/14305756.html