【Linux|Git】常用命令汇总

文章目录

  • 1.Linux
    • 1.1 linux版本
    • 1.2 linux常用命令
  • 2.git
    • 2.0 git常用命令
    • 2.1 分支管理
    • 2.2 分布式版本工具-git
    • 2.3 gitlab
    • 2.4 git学习笔记
      • 2.4.1 初始设置
      • 2.4.2 版本回溯 git reset --hard 版本号
      • 2.4.3 git分支操作
      • 2.4.4 [同步fork仓库](https://www.jianshu.com/p/7f6598253a2b)
    • 2.4.5 git stash暂存操作


1.Linux

1.1 linux版本

我们使用Debian。Linux发行版或口味的一点背景。Linux人大致有两个阵营:Debian和Fedora。这是两个不同的项目,它们本身是相互关联的(复杂吧?)但是为了你的目的,让我们把它们视为两个独立的不同来源,导致了两个系列的下游发行版。例如,很多人来自使用CentOS的公司,这是Fedora发行版的一种风格。Ubuntu,一个受欢迎的桌面版本的Linux,有很好的图形用户界面,是Debian的孩子。我们选择Debian,因为它作为服务器是稳定的,而且随着时间的推移,它越来越受欢迎。

1.2 linux常用命令

1)、rm -r : 删除一个文件夹, rm -r src 删除src目录
cp -r folder1 folder2 :将folder1复制为folder2

rm -rf / 切勿在Linux中尝试!删除电脑中全部文件!
2)、mv 移动文件, mv index.html src 其中index.html 是我们要移动的文件, src 是目标文件夹,当然, 这样写,必须保证文件和目标文件夹在同一目录下。

3)reset 重新初始化终端/清屏。

4)、clear 清屏。

5)、history 查看命令历史。

6)、help 帮助。

7)、exit 退出。

8)、#表示注释
9)给文件加权限

chmod a+x build.sh

意思是给所有的用户添加执行
test.bin 这个文件的权限

chmod是添加更改权限命令
a是指所有的用户组,包括root用户组,文件拥有者的用户组,还有其他用户组。
+x是指添加执行权限。
+x是执行权限,+r是阅读权限,+w是写入权限

2.git

2.0 git常用命令

git init 初始化本地库
git status 查看本地库状态
git add 文件名 添加到暂存区
git commit -m “日志信息” 文件名 提交到本地库
git reflog 查看历史记录
git reset --hard 版本号 版本穿梭

2.1 分支管理

检查分支状态:

git status

列出所有Git分支

git branch -a

切换到某一分支

git checkout -b [XXXXX]

删除本地分支

git branch -d <分支名>

拉取远程分支到本地
!!!checkout -b xxx origin/xxx 只适用于第一次创建分支,如果本地分支已存在,则不会切换过去1

git checkout -b hrplus-phase2-boe origin/hrplus-phase2-boe 

替代:用这条替代命令成功切换: git checkout --track origin/new_remote_branch 之后本地会出现new_remote_branch并且已经切换过去

强制拉取远程分支

git checkout -f hrplus-phase3-boe-flow origin/hrplus-phase3-boe-flow

建立好映射之后就可以pull下来

git pull

再找相应权限

git mod tidy

更新到远程最新分支

git pull origin master

link

2.2 分布式版本工具-git

【Linux|Git】常用命令汇总_第1张图片
外加一个远程仓库!!!!!

2.3 gitlab

局域网:非开源代码

2.4 git学习笔记

2.4.1 初始设置

git config --global user.name 用户名 设置用户签名
git config --global user.email 邮箱 设置用户签名

会写在user的.gitconfig文件下生成对应信息,用来在提交时,判断这是谁写的。

在对应文件夹

git init

(mac:cmd+shift+.打开隐藏文件)

修改相应文件后,存到暂存区,可被追踪

git add hello.txt
git add . (add所有文件)

此时,可以只删除暂存区内容,保留工作区源代码

git rm --cached hello.txt

提交到本地库

git commit -m "喵喵喵喵"  hello.txt
 git commit -m"hox-fix".  (提交所有文件)

查看本地库状态

git status

查看提交记录

git reflog
git log

添加本地各种文件参考

2.4.2 版本回溯 git reset --hard 版本号

先git status 查看版本号,再git reset

git reset --hard bcd5157

2.4.3 git分支操作

【Linux|Git】常用命令汇总_第2张图片
常用分支命令:
【Linux|Git】常用命令汇总_第3张图片

  • 在新分支开发:可以先git branch 创建一个分支 hot-fix,git checkout XXXX切换到该分支,再进行修改提交之类的
  • 合并分支(正常合并):若想把hot-fix内容合并到master,需站在master进行合并git merge hot-fix
  • 合并分支(冲突合并):
    正常 git merge时,显示merge冲突,于是打开冲突文件,修改head指针内容,再重新提交add. 此时commit内容只合并到master分支,hot-fix分支并未修改,且此时commit命令修改为:
git commit -m "merge conflict"(不指向任何文件)
  • 冲突产生的原因:

合并分支时,两个分支在同一个文件的同一个位置有两套完全不同的修改。
Git 无法替我们决定使用哪一个。必须人为决定新代码内容。

2.4.4 同步fork仓库

  1. git remote -v 查看你的远程仓库的路径:

  2. 执行命令 git remote add upstream https://github.com/selfteaching/the-craft-of-selfteaching.git

  3. 再次执行命令 git remote -v 检查是否成功

  4. git push origin master

  5. 执行命令 git fetch upstream 抓取原仓库的更新

  6. 执行命令 git merge upstream/master 合并远程的master分支

  7. 执行命令 git push 把本地仓库向github仓库(你fork到自己名下的仓库)推送修改

2.4.5 git stash暂存操作

  • 问题情景:git push出现提示:the following untracking working tree file would be overwritten by merge:XXXX
    参考
  • 顺便理解了一下git pull和git fetch的区别:
    pull命令是即更新了本地版本库也更新了工作区;fetch命令是只更新了本地的版本库;想要将本地版本库的代码更新到工作区还需要merge命令
  • git 本地仓库设置:
    参考

    回到正题:
git fetch --all //将远程代码拉到本地版本库
git stash //将暂存区和工作区内容保存起来
git pull  //将远程代码拉到暂存区&版本库
git stash pop //把工作区和暂存区的改动都恢复到工作区。

你可能感兴趣的:(实习向,git,linux)