文章目录
- 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/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
外加一个远程仓库!!!!!
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分支操作
常用分支命令:
- 在新分支开发:可以先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仓库
-
git remote -v 查看你的远程仓库的路径:
-
执行命令 git remote add upstream https://github/selfteaching/the-craft-of-selfteaching.git
-
再次执行命令 git remote -v 检查是否成功
-
git push origin master
-
执行命令 git fetch upstream 抓取原仓库的更新
-
执行命令 git merge upstream/master 合并远程的master分支
-
执行命令 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 //把工作区和暂存区的改动都恢复到工作区。
更多推荐
【Linux|Git】常用命令汇总
发布评论