社区微信群开通啦,扫一扫抢先加入社区官方微信群
社区微信群
定义
Git,最先进的分布式版本控制系统之一,最初是由Linux之父Linus为了更好管理开源Linux系统而开发的一个软件;
下载:https://git-scm.com/downloads
sudo apt-get install git
设置
安装完成后,需要进行以下设置:
$ git config --global user.name "user name"
$ git config --global user.email "example@email.com"
# 可选,让Git命令行显示颜色
$ git config --global color.ui true
$ mkdir gitlearn
命令创建;$ git init
将刚才创建的目录变为可管理的仓库;git add
命令将文件添加到仓库;$ git add readme.md
git commit
将文件提交到仓库;$ git commit -m "this is a readme.md file."
用git status
查看仓库当前状态;
用git diff filename
查看文件具体修改的内容;
$ git diff readme.txt
git log
查看最近到最远的提交日志$ git log --pretty=oneline
git log
查看提交历史,以确定commit_id,回退后,当想要重返未来版本时,用git reflog
查看命令历史,从而确定重返版本commit_id,HEAD
指向当前版本,为了在版本的历史之间穿梭,使用命令git resrt --hard commit_id
$ git reset --hard HEAD^
git checkout -- filename
$ git checkout -- readme.md
git rm
将版本库中文件删除,然后通过git commit
提交$ git rm readme.md
$ git commit -m "delete readme.md"
为了将本地Git和远程Github相连接,可以进行如下操作:
.ssh
目录下是否存在文件id_rsa
和id_rsa.pub
,有则复制id_rsa.pub
中内容明将其添加到Github中的SSH Key,建立两者联系,可以在本地管理,$ ssh-keygen -t rsa -C "example@email.com"
如何添加远程仓库
$ git remote add origin git@github.com:cunyu1943/gitlearn.git
$ git clone https://github.com/cunyu1943/the_journey_to_nlp.git
将本地仓库内容推送到远程仓库;
# 第一次推送
$ git push -u origin master
# 之后的推送
$ git push origin master
$ git switch -c dev
# 等价命令
$ git checkout -b dev
# 等价命令
$ git branch dev
$ git checkout dev
$ git branch
$ git checkout/switch master
$ git merge dev
$ git branch -d dev
$ git branch -D dev
$ git log --graph
查看远程库信息:git remote -v
;
本地新建分支若不推送到远程,则对其他人不可见;
本地推送到远程库,git push origin branch-name
,若推送失败,则用git pull
抓取远程新提交;
$ git push origin master
# 若推送失败,则先执行如下命令
$ git pull
git checkout -b branch-name origin/branch-name
$ git checkout -b dev origin/dev
git branch --set-upstream branch-name origin/branch-name
$ git branch --set-upstream dev origin/dev
git pull
,若有冲突,则先解决处理后再处理;先切换到需要打标签的分支git switch branch-name
;
打标签并查看;
# 打一个名为"v1.0"的标签
$ git tag v1.0
# 查看所有标签
$ git tag
git show <tagname>
;$ git show v1.0
-a
打标签名,-m
指定说明文字;$ git tag -a v1.0 -m "version 1.0 released" 132gsfh
git tag -d <tagname>
,远程则使用git push origin :refs/tags/<tagname>
# 删除本地标签
$ git tag -d v30.0
# 删除远程标签
$ git push origin :refs/tags/v30.0
git push origin <tagname>
# 推送某一标签
$ git push origin v1.0
# 推送所有标签
$ git push origin --tags
git remote rm <basename>
$ git remote rm origin
git remote add <basename> git@gitee.com:<username>/<basename>.git
$ git remote add gitee git@gitee.com:cunyu1943/notes.git
git remote add <basename> git@github.com:<username>/<basename>.git
$ git remote add github git@github.com:cunyu1943/notes.git
-推送到Gitee和Github
# 推送到Gitee
$ git push gitee master
# 推送到Github
$ git push github master
忽略特殊文件
此时需要编写.gitignore
文件,文件要放到版本库中,且可以对.gitignore
进行版本管理;
配置命令别名
# 举例
$ git config --global alias st status
$ git config --global alias checkout co
$ git config --global alias commit cm
欢迎关注微信公众号:村雨1943;创作不易,未经同意,转载请注明出处~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!