Remember that the metric tensor in and of itself is such that g_{p}:T_{p}(M) \times T_{p}(M) \mapsto \mathbb{R} for a p\in M. But let's say, instead of g(\mathbf{U}, \mathbf{V}), (\mathbf{U, V})\in T_{p}(M)\times T_{p}(M) we simply had g(\mathbf{U}, ), \mathbf{U}\in T_{p}(M). What this statement is equivalent to is that we essentially have a function of a single vector of the tangent space at that point p on M. We know that one - forms are mappings of vectors to the reals so what we can say is g(\mathbf{U}, ) = \tilde{U}, \tilde{U}\in T^{*}_{p}(M) where the tilde denotes a one - form. This is essentially the gist of contracting with the metric tensor. So when you have g_{\alpha \beta }\Gamma ^{\beta }_{\gamma \delta } = \Gamma _{\alpha \gamma \delta } what you are doing is taking the vector component (which is the upper index) and summing it over a single index of the metric tensor which is equivalent to taking the metric as a mapping but with one missing argument. This will give you the corresponding one - form which is the lower index. The situation with the inverse metric is, of course, analogous to this. You can contract partial derivatives because remember that, for p\in M for the n - manifold M in question, the partial derivatives \partial _{\alpha } at p are the n directional derivatives at p and these \partial _{\alpha } are actually the basis vectors for T_{p}(M). As you know, the metric with a single vector argument will give you the corresponding one form so contracting the index of a partial derivative is fine.