- Git学习网站:http://blog.jobbole.com/25808/
- 网络Git服务器如Coding,gitHub,gitLab
密码相关
- 生成sshkey
在终端中敲下面的命令,第一步会生成一对私钥和公钥,第二步查看公钥字符串。
ssh-keygen -t rsa -C "$your_email" (这里要替换成自己的邮箱)
cat ~/.ssh/id_rsa.pub
-
保存sshkey到gitlab
在面板上依次点击Profile Settings –> SSH Keys –> Add SSH Keys。然后把上一步中的id_rsa.pub中的内容拷贝出来粘贴到输入框中,保存。 -
git push的时候每次都要输入用户名和密码的问题解决
原因:在添加远程库的时候使用了https的方式,所以每次都要用https的方式push到远程库
测试:查看使用的传输协议
git remote -v
origin https://github.com/toyijiu/DailyBlog.git (fetch)
origin https://github.com/toyijiu/DailyBlog.git (push)
对策:重新设置成ssh的方式
git remote rm origin
git remote add origin git@github.com:username/repository.git (这里要替换成自己的路径)
git push -u origin master
确认:再看下当前的传输协议
git remote -v
origin git@github.com:toyijiu/DailyBlog.git (fetch)
origin git@github.com:toyijiu/DailyBlog.git (push)
上传代码相关
- 告诉服务器你是谁
git config --global user.email "you@example.com" (这里要替换成自己的邮箱)
git config --global user.name "Your Name" (这里要替换成自己的用户名)
- 上传初始代码
cd project_root (这里要替换成自己的文件夹)
git init (初始化git仓库)
git add . (添加文件到暂存区)
git commit -m 'init commit' (提交代码到仓库)
git remote add origin git@example.com:namespace/projectname.git (链接到git server,这里要替换成自己的仓库地址)
git push --set-upstream origin master (push代码到服务器)
- 上传修改代码
git add -A (把所有修改的代码放到暂存区)
git add src/XXX (把要提交的代码放到暂存区)
git commit -m "说明内容" (上传代码)
git push (将本地分支的更新,推送到远程)
git commit --amend (修改最近一次commit履历)
下载代码相关
- 从现有仓库克隆
git clone git@gitlab.com:chenys/elevator-erp.git (这里要替换成自己的代码仓库地址)
- 取得最新版本
git pull
取消相关
git checkout xxx (把本地修改后的代码返回回来,xxx是文件名)
git checkout [commit的sha值] 回滚到sha值版本
git reset (把git add后的代码返回回来)
git reset [commit的sha值] 回滚到sha值版本,之后的修改会保存到本地
$ git log
commit 35701bd347d8c96505b81daa28512ce489238fb4 (HEAD -> dev, origin/dev)
// 35701bd347d8c96505b81daa28512ce489238fb4 就是commit的sha值
分支相关
git brandh (查看当前分支)
git branch chenys / git checkout -b chenys (创建代码分支chenys)
git branch -d chenys(删除代码分支chenys)
git checkout chenys (切换到分支chenys)
git merge master (把master上的代码合并到当前分支)
查询相关
git status (查看代码的修改状况)
git diff (查看已修改的内容)
git log (查看各种信息,commit信息,分支信息等)
查询某个文件的修改履历
cd src/XXX (切换到文件所在目录,XXX代表文件所在的文件夹)
git log -p XXX (显示该文件的所有修改履历,XXX代表文件名)
别名相关
- 查看别名
git config --list|grep alias
- 设置别名
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.ci commit
git config --global alias.st status
网友评论