社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Git

Git常用命令及使用,GitLab/GitHub,Git/Svn区别

赖先生 • 5 年前 • 109 次点击  
阅读 12

Git常用命令及使用,GitLab/GitHub,Git/Svn区别

原文链接: 本人博客园文章

Git安装配置及常用命令
  1. 从官网下载安装包,手动完成安装。
  2. 打开Git Bash命令行工具,执行命令ssh-keygen -t rsa -C Email-Addresss生成一个密钥对。
  3. 登录到GitLab,点击右上角你的用户头像,点击Edit Profile settings,点击SSH Keys,点击Add SSH Key ,填写Title栏,复制用户目录下.ssh/id_rsa.pub文件的内容到Key,点击Add Key
  4. 点击右上角的 New project,填写完成后点击Create project新建一个仓库,点击Activity,点击SSH后复制SSH边上栏里的地址。
  5. 打开Git Bash命令行工具,切换到一个合适的目录,使用命令git clone '刚才复制的URL'克隆创建的仓库。
  6. 进入目录cd 仓库名,执行命令
    • git config --global user.email your-email,设置你的邮箱
    • git config --global user.name your-name,设置你的姓名。
  7. 执行命令:
    • echo "# Description" > README.md,添加一个文件
    • git status状态,发现有未跟踪文件
    • git add .,当前目录所有文件添加到暂存区
    • git diff,比较当前工作区和暂存区有何不同
    • git status,查看当前状态,发现有文件未提交
    • git commit -m "注释",把暂存区内容提交到本地仓库
    • git push -u origin master,把本地仓库的提交推送到远程仓库
    • git log,查看提交日志
  8. 模拟远程更新 登录到GitLab,点击Files标签,点击README.md文件,点击Edit按钮修改文件内容,添加新行:”* 9 远程修改文件记录”,可以点击Preview预览,也可以填写注释后直接保存。
  9. 执行命令:
    • git pull,拉取远程仓库的更新提交,并做自动合并,可能会出现冲突
    • git fetch,获得远程仓库的更新提交,不做自动合并,需要手动合并
    • git merge origin/master,把远程更新提交手动合并到本地master分支
  10. 配置命令别名
    • git config --global alias.co checkout,配置检出命令别名
    • git config --global alias.br branch,配置分支命令别名
    • git config --global alias.ci commit,配置提交命令别名
    • git config --global alias.st status,配置当前状态命令别名
    • git config --global alias.df diff,配置比较命令别名
    • git config --global alias.pl pull,配置拉取命令别名
    • git config --global alias.pu push,配置推送命令别名
    • git config --list,查看配置列表
    • git config --global credential.helper store,配置记住密码,以HTTPS使用时
  11. 其它命令
    • git clean -f,清空未跟踪文件
    • git checkout .,清空工作区改动
    • git checkout some-branch-name file-name.js,检出指定分支的指定文件
    • git checkout {{some-commit-hash}} file-name.js,检出指定提交的指定文件
  12. 其它
* Git管理大项目一段时间后会比较慢,可以使用git gc命令清理一下
* Git不管理空目录,如果本地有空目录,则始终不会提交到仓库中
* Git会根据文件的相似性自动识别重命令名操作,底层其实也是先delete后add
* 可在.git同级目录添加.gitignore文件,文件中可写入忽略文件信息,查看状态和提交时均会自动忽略
* 1.7版好像支持了像svn那样只检出部分目录的功能,详细请移步官网文档,另附Git稀疏检出教程一例
* 推荐官方书籍:Pro Git
* 官方手册地址请戳我,注:git help 'command'显示的就是官方手册Manual Page.
* 还有一些其它功能,比如:rebase, rm, reset, remote, blame, cherry-pick, mergetool, 
* difftool等本教程还没涉及,以后会逐步更新
复制代码
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/38609
 
109 次点击