Mac下安装配置git/idea连接GitHub

安装软件、配置用户名和密码

(1)登陆git的官网:http://www.git-scm.com/ 。点击如图位置下载即可
(2)下载完成后,如图所示,点击安装即可。
安装好Git后,配置用户名和用户邮箱,以后每次与Git的交互都会使用该信息。

git config --global user.name “your_name”
git config --global user.email "[email protected]"

配置信息可以更改,以后想要更改使用上面指令就可以。同时可以使用git config --list指令查看Git的配置信息。

Git默认是大小写不敏感的,也就是说,将一个文件名某个字母做了大小写转换的修改Git是忽略这个改动的,导致在同步代码时候会出现错误,所以建议大小把Git设置成大小写敏感。

git config core.ignorecase false

(3)然后进入终端,执行命令:

which -a git

查看当前Mac中已经存在的git。

输出结果如下:

/usr/local/bin/git
/usr/bin/git

表示目前Mac下有两个版本的git,第一个是我们刚刚安装的,第二个是Mac自带的。

(4)执行命令:git --version

查看当前mac使用的git版本;输出结果如下:

(5)现在需要配置git,执行命令:

vim .bash_profile

然后加入一行环境变量:

export PATH=/usr/local/git/bin:$PATH

退出保存,执行:

source .bash_profile
Mac下安装配置git/idea连接GitHub
Mac下安装配置git/idea连接GitHub

(6)再次执行:

git --version

发现git版本已经变成我们刚刚安装的了。到此为止,我们已经把git安装好了。

到此为止,发现自己把配置文件给改坏了!!!

赶紧采取了急救措施
最近开始学习react-native,在调试安卓程序时报错,然后为了解决错误不小心改了.bash_profile这个文件,也就是配置环境变量,结果导致终端很多基本命令都不能使用,在网上找到一些解决办法,亲测有效。

  1. 在命令行中输入:
    export PATH=/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11R6/bin
    这样可以保证命令行命令暂时可以使用。命令执行完之后先不要关闭终端。
    如果你的命令行命令可以使用,请直接跳到第2步。
  2. 进入当前用户的home目录:
    cd ~/
  3. 创建.bash_profile文件:
    touch .bash_profile
  4. 打开.bash_profile并编辑:
    open .bash_profile
  5. 这样就打开了一个记事本,会显示你之前配置过的path,修改记事本,强烈建议先备份下,然后根据自己需要配置。
    export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_191.jdk/Contents/Home

export ANDROID_HOME=/Users/daxiong/Library/Android/sdk
export PATH=PATH:PATH:ANDROID_HOME/platform-tools
export PATH=PATH:PATH:ANDROID_HOME/tools
export PATH=PATH:PATH:ANDROID_HOME/build-tools/28.0.3

export PATH=/usr/local/bin:/usr/local/sbin:~/bin:$PATH

上面是我配置好的java和android环境变量;
由于自己之前没有备份,最后一行export PATH=/usr/local/bin:/usr/local/sbin:~/bin:$PATH是在网上找的,据说是系统默认的环境变量配置,但是自己配置好后删了这一行并没有什么影响,姑且参考第1点的解释,有机会再验证。
6.command+s保存关闭文件
7.使修改后的配置生效命令:
source .bash_profile
8.验证环境变量是否配置成功:
如果是java,在终端输入以下命令
java -version
Android
adb version
最后,希望这篇文章能帮到你。

Mac下安装配置git/idea连接GitHub

然后我检查了一下,发现下载的版本和这里输入git --version后显示的版本号是相同的,所以根本不需要配置环境变量呀

设置公钥私钥

Git关联远端仓库时候需要提供公钥,本地保存私钥,每次与远端仓库交互时候,远端仓库会用公钥来验证交互者身份。使用以下指令生成**。

ssh-****** -t rsa -C "[email protected]"

生成**后,在本地的/Users/当前电脑用户/.ssh目录下会生成两个文件id_rsa、id_rsa.pub,id_rsa文件保存的是私钥,保存于本地,id_rsa.pub文件保存的是公钥,需要将里面内容上传到远端仓库。

Mac下安装配置git/idea连接GitHub

Mac下安装配置git/idea连接GitHub
输入cd指令,进入当前用户目录
输入ls -a指令,查看当前用户目录下所有文件,包括隐藏文件
输入cd .ssh指令,进入.ssh目录
输入ls指令,查看.ssh目录下的文件
输入cat id_rsa.pub指令,查看id_rsa.pub文件中内容

远端仓库添加**

以GitHub为例子,向远端仓库添加公钥,上面已经获取到了公钥,只需要将公钥添加到远端仓库就可以了。

在个人设置页面,左边选中SSH and GPG keys,在右边添加公钥,title是key的名称,可以随便取,可更改,key是上面我们获取到的公钥,填写完毕后点击add SSH key按钮,这样远端就添加到了**。

本地关联远端仓库

在本地文件夹下面执行git init指令,初始化文件夹,作为本地的一个仓库。
执行git remote add origin 仓库的ssh链接
执行git pull指令,将远端代码拉取到本地
执行完毕后,远端仓库代码已经同步到了本地。
Mac下安装配置git/idea连接GitHub

常用Git指令

初始化配置
git config --global user.name “XXX"
git config --global user.email “XXXX"

设置大小写敏感
git config core.ignorecase false

生成**
ssh-****** -t rsa -C “your_email”

将远端代码clone到本地目录
git clone <远端git> <本地目录>

提交修改
git add <文件> // 将有修改的文件添加到本地缓存中 git add . 是添加所有修改
git commit -m “本次修改信息” // 提交本次修改,一般是在git add之后操作
git reset . // 撤销add
git rm --cached . // 撤销add

切换分支
git checkout <branch_name>

以当前分支为蓝本新建分支并切换到新分支
git checkout -b <branch_name>

当前分支合并其他分支
git merge <branch_name>

远端新建分支,其实就是将本地分支推送至远端
git push origin <local_branch_name>:<remote_branch_name>

删除远端分支,其实就是推送了一个空的分支到远端覆盖了原来的远端分支
git push origin :<remote_branch_name>

从远端拉取分支,并建立对应关系
git checkout -b <local_branch_name> origin/<remote_branch_name>
// 或者
git branch —track <local_branch_name> origin/<remote_branch_name>

本地已经存在的分支和远端分支建立对应关系
git branch —set-upstream <local_branch_name> origin/<remote_branch_name>

添加远端库
git remote add <远端库代称> <远端库地址>
git clone <远端库地址> <目录> //不需要git init

回滚到某一个提交版本
git reset --hard/soft <commit_id> // 回滚到某一个版本
git reset --hard/soft HEAD~ // 回滚num个提交
git revert <merge_commit_id> -m number // 撤销某一次merge

强制远端覆盖本地
git fetch --all
git reset --hard origin/<remote_branch_name>

提交日志查看方式
git log -p 每一次提交具体差异
git log —stat 显示文件修改差异,没显示具体修改
git log —graph 树形状提交记录,可查看分支合并信息

git pull —rebase有冲突后,解决冲突,使用 git add .然后使用git rebase --continue

切换到某个分支,将其他分支的某次提交应用到该分支
git checkout <branch_name>
git cherry-pick
前者表示把到之间(左开右闭,不包含start-commit-id)的提交cherry-pick到当前分支;后者表示把到之间(闭区间,包含start-commit-id)的提交cherry-pick到当前分支。

git cherry-pick …
git cherry-pick ^…

tag

新建tag
git tag <tag_name> //轻量标签
git tag -a <tag_name> -m “tag_msg” // 附注标签
git tag -a <tag_name> <commint_id> // 给某次提交添加标签

删除tag
git tag -d <tag_name>

查看tag
git tag // 查看所有tag
git show <tag_name> // 查看某条tag

提交到远端
git push origin <tag_name> // 将某个tag提交到远端
git push origin –tags // 将所有tag提交到远端

branch相关指令
git branch -d <branch_name> // 删除某个分支
git branch -D <branch_name> // 强制删除某个分支
git branch -avv // 查看本地分支与远端分支关系,并且显示分支最新一次提交信息
git remote show origin // 查看远端分支间关系

如何在IDEA中直接导入github的项目

因为前面进行了idea中的git的配置和github的配置,还有git的公钥私钥的配置,所以现在可以直接进行克隆了

打开IDEA→File→setting→Editor→Version Control→Git→选择刚刚解压的Git文件