工具&利器

git使用记录

了解

GIT是一个分布式版本控制软件,最初由林纳斯·托瓦兹(Linus Torvalds)创作,于2005年以GPL发布。最初目的是为更好地管理Linux内核开发而设计。[维基百科]

官方文档

GIT安装

apt-get install git

配置相关

修改远程仓库地址 git remote set-url origin [url]
查看配置: git config --list
设置user: git config --global user.name "辣条拌鱼翅"
设置email: git config --global user.email "admin@gmail.com" 更多

文件删除与恢复

查看删除的文件: git ls-files --deleted
恢复删除的文件: git checkout -- file_name more
移动或重命名文件: git mv -f oldfolder newfolder git add -u newfolder more

资料1-git恢复删除文件之ls-files

将本地文件推荐至远程库中

git add.

git commit -m '修改了XXX'

git push -u origin master

删除已经add文件

方法1: 不删除物理文件,仅将该文件从缓存中删除 git rm --cached "文件路径"

方法2: 不仅将该文件从缓存中删除,还会将物理文件删除(不会回收到垃圾桶) git rm --f "文件路径"

TAG-标签

git tag //查看所有标签
git tag -a v1.0 -m 'first version' //创建标签
git tag -d v1.0 //删除标签
git push origin --tags //推送标签

git push origin :refs/tags/<标签名> 删除远程标签

git checkout <标签名> //切换到指定的标签名 tip:不能修复标签如果快照
git checkout -b branch_name tag_name //如果想修改标签则新建分支
git checkout master //切换回主分支

[更多]

忽略不提交

.gitigone通配符

  • 以斜杠“/”开头表示目录;
  • 以星号“*”通配多个字符;
  • 以问号“?”通配单个字符
  • 以方括号“[]”包含单个字符的匹配列表;
  • 以叹号“!”表示不忽略(跟踪)匹配到的文件或目录;

.gitigone

*
!.gitignore
//除了.gitignore 其它所有文件及文件夹都不提交

提交文件夹忽略文件夹内所以的文件及文件夹

app/build/*
!app/build/.gitignore

分支

显示分支: git branch ps 参数 -a 显示远程分支

在本地创建新的分支: git branch newbranch

切换到新的分支: git checkout newbranch

将新的分支推送到github: git push origin newbranch

在本地删除一个分支: git branch -d newbranch

在github远程端删除一个分支: (ps:分支名前的冒号代表删除 )git push origin :newbranch

查看最近3次提交: git log -n
查看版本: git reflog
退回上一个版本: git reset --hard HEAD^
退回指定版本: git reset --hard Obfafd
远程退回: git push -f tip: 先本地退回版本后, 再强制推送. 更多

gitlab创建库后

Git global setup
git config --global user.name "username"
git config --global user.email "username@outlook.com"
Create a new repository
git clone ssh://git@192.168.1.10:2220/test/test.git
cd daily
touch README.md
git add README.md
git commit -m "add README"
git push -u origin master
Push an existing folder
cd existing_folder
git init
git remote add origin ssh://git@192.168.1.10:2220/test/test.git
git add .
git commit -m "Initial commit"
git push -u origin master
Push an existing Git repository
cd existing_repo
git remote rename origin old-origin
git remote add origin ssh://git@192.168.1.10:2220/test/test.git
git push -u origin --all
git push -u origin --tags

问题记录

Q: warning: LF will be replaced by CRLF

A: git config --global core.autocrlf false 禁用自动替换换行符

更多>>
warning: LF will be replaced by CRLF