Here is a way to prove compactness for propositional logic in terms of trees. As Andreas mentions in the comments, the tree property for $\omega$ is not enough. Instead, we can use a two-cardinal variation of the tree property.
If $\kappa$ is a regular cardinal and $\lambda \ge \kappa$, a $(\kappa,\lambda)$ tree $T$ is a set of $2$-valued functions whose domains are elements of $\mathcal{P}_\kappa(\lambda)$ (that is, subsets of $\lambda$ of size $<\kappa$) such that
- the restriction of every function in $T$ is in $T$, and
- every element of $\mathcal{P}_\kappa(\lambda)$ is the domain of some function in $T$.
A cofinal branch of $T$ is a function $f:\lambda \to 2$ such that $f \restriction s \in T$ for every $s \in \mathcal{P}_\kappa(\lambda)$. There is a principle TP$(\kappa,\lambda)$, isolated by Weiss, that says that every thin $(\kappa,\lambda)$ tree has a branch. We don't need to use the definition of "thin", because it is automatic if $\kappa = \omega$ or more generally if $\kappa$ is a strong limit cardinal.
If $\kappa$ is a strongly inaccessible cardinal, then TP$(\kappa,\lambda)$ holds if and only if $\kappa$ is $\lambda$-compact, so it is a large cardinal property. However, TP$(\omega,\lambda)$ can be proved to hold in ZFC: Take an ultrafilter $U$ on $\mathcal{P}_\omega(\lambda)$ that is fine, meaning that it contains the set $\{s \in \mathcal{P}_\omega(\lambda) : \alpha \in s\}$ for every $\alpha < \lambda$. Because we are not requiring any amount of completeness, such an ultrafilter exists by Zorn's lemma. Given an $(\omega,\lambda)$-tree $T$, choose for each set $s \in \mathcal{P}_\kappa(\lambda)$ some function $f_s \in T$ with domain $s$. Then we can define a branch $f$ of $T$ by $f(\alpha) = 1$ if and only if $f_s(\alpha) = 1$ for $U$-almost every $s \in \mathcal{P}_\omega(\lambda)$.
Now we can use this tree property to find a truth assignment for a set $S$ of propositional formulas. By enlarging $S$ we may assume that it is closed under subformulas and in particular that every propositional variable appearing in a formula in $S$ is itself in $S$. Define an $(\omega, S)$-tree $T$ consisting of
all consistent truth assignments defined on finite subsets $s$ of $S$. (Strictly speaking we ought to fix a bijection between $S$ and $|S|$ here.) By consistent I mean, for example, that if the formulas $\varphi$, $\psi$, and $\varphi \wedge \psi$ are all in $s$, then $\varphi \wedge \psi$ is assigned the value 1 if and only if both $\varphi$ and $\psi$ are.
Assuming TP$(\omega,|S|)$, this tree has a branch, and such a branch is a truth assignment that satisfies all the formulas in $S$.